gpg - Ferramenta de criptografia e assinatura OpenPGP
SINOPSIS
gpg [--homedir dir] [--options file] [options] command [args]
DESCRIÇÃO
gpg é a parte OpenPGP do GNU Privacy Guard (GnuPG). É uma ferramenta para fornecer serviços de criptografia e assinatura digital usando o padrão OpenPGP. O gpg possui gerenciamento completo de chaves e todos os recursos que você esperaria de uma implementação OpenPGP completa.
Existem duas versões principais do GnuPG: GnuPG 1.x e GnuPG 2.x. O GnuPG 2.x suporta algoritmos de criptografia modernos e, portanto, deve ser preferido em relação ao GnuPG 1.x. Você só precisa usar o GnuPG 1.x se sua plataforma não suportar o GnuPG 2.x, ou se precisar de suporte para alguns recursos que o GnuPG 2.x descontinuou, por exemplo, descriptografar dados criados com chaves PGP-2.
Se você estiver procurando pela versão 1 do GnuPG, poderá descobrir que essa versão está instalada com o nome gpg1.
VALOR DE RETORNO
O programa retorna 0 se não houver erros graves, 1 se pelo menos uma assinatura estiver incorreta e outros códigos de erro para erros fatais.
Observe que a verificação de assinatura requer conhecimento exato do que foi assinado e por quem foi assinado. Portanto, usar apenas o código de retorno não é uma maneira adequada de verificar uma assinatura por um script. Use adequadamente os códigos de status ou use a ferramenta gpgv, que foi projetada para facilitar a verificação de assinatura para scripts.
AVISOS
Use uma senha boa para sua conta de usuário e certifique-se de que todos os problemas de segurança sejam sempre corrigidos em sua máquina. Além disso, use proteção física diligente em sua máquina. Considere usar uma boa frase secreta como proteção de último recurso para sua chave secreta, caso sua máquina seja roubada. É importante que sua chave secreta nunca seja divulgada. Usar um token ou cartão inteligente de fácil transporte com a chave secreta é frequentemente aconselhável.
Se você for verificar assinaturas separadas, certifique-se de que o programa esteja ciente disso; forneça ambos os nomes de arquivo na linha de comando ou use '-' para especificar STDIN.
Para uso de script ou outro uso não supervisionado do gpg, certifique-se de usar a interface de análise de máquina e não a interface padrão, que se destina ao uso direto por humanos. A interface de análise de máquina fornece uma API estável e bem documentada, independente do idioma ou de futuras alterações do gpg. Para habilitar esta interface, use as opções --with-colons e --status-fd. Para certas operações, a opção --command-fd também pode ser útil. Consulte esta página de manual e o arquivo 'DETAILS' para a especificação da interface. Observe que as páginas "info" do GnuPG, bem como a versão em PDF do manual do GnuPG, apresentam um capítulo sobre o uso não supervisionado do GnuPG. Como alternativa, a biblioteca GPGME pode ser usada como uma abstração de alto nível sobre essa interface.
INTEROPERABILIDADE
GnuPG tenta ser uma implementação muito flexível do padrão OpenPGP. Em particular, GnuPG implementa muitas das partes opcionais do padrão, como o hash SHA-512 e os algoritmos de compressão ZLIB e BZIP2. É importante estar ciente de que nem todos os programas OpenPGP implementam esses algoritmos opcionais e que, ao forçar o uso deles através das opções --cipher-algo, --digest-algo, --cert-digest-algo ou --compress-algo em GnuPG, é possível criar uma mensagem OpenPGP perfeitamente válida, mas que não pode ser lida pelo destinatário pretendido.
Existem dezenas de variações de programas OpenPGP disponíveis, e cada um suporta um subconjunto ligeiramente diferente desses algoritmos opcionais. Por exemplo, até recentemente, nenhuma versão (não adulterada) do PGP suportava o algoritmo de cifra BLOWFISH. Uma mensagem que usa BLOWFISH simplesmente não podia ser lida por um usuário PGP. Por padrão, GnuPG usa o sistema de preferências OpenPGP padrão que sempre fará a coisa certa e criará mensagens que podem ser usadas por todos os destinatários, independentemente de qual programa OpenPGP eles usam. Só altere esse padrão seguro se você realmente souber o que está fazendo.
Se você absolutamente precisar alterar o padrão seguro, ou se as preferências em uma determinada chave forem inválidas por algum motivo, é muito melhor usar as opções --pgp6, --pgp7 ou --pgp8. Esses opções são seguras, pois não forçam nenhum algoritmo específico em violação do OpenPGP, mas em vez disso, reduzem os algoritmos disponíveis para uma lista "segura para PGP".
COMANDOS
Os comandos não são distinguidos das opções, exceto pelo fato de que apenas um comando é permitido. Em geral, opções irrelevantes são ignoradas silenciosamente e podem não ser verificadas quanto à correção.
gpg pode ser executado sem comandos. Nesse caso, ele imprimirá um aviso e executará uma ação razoável
dependendo do tipo de arquivo fornecido como entrada (uma mensagem criptografada é descriptografada, uma assinatura é verificada, um arquivo contendo chaves é listado, etc.).
Se você encontrar algum problema, adicione a opção --verbose à invocação para ver mais diagnósticos.
Comandos não específicos para a função
--version
Imprime a versão do programa e as informações de licenciamento. Observe que você não pode abreviar este comando.
--help
-h Imprime uma mensagem de uso resumindo as opções de linha de comando mais úteis. Observe que você
não pode abreviar arbitrariamente este comando (embora você possa usar sua forma abreviada -h).
--warranty
Imprime informações de garantia.
--dump-options
Imprime uma lista de todas as opções e comandos disponíveis. Observe que você não pode abreviar este comando.
Comandos para selecionar o tipo de operação
--sign
-s Assina uma mensagem. Este comando pode ser combinado com --encrypt (para assinar e criptografar uma mensagem), --symmetric (para assinar e criptografar simetricamente uma mensagem) ou ambos --encrypt e
--symmetric (para assinar e criptografar uma mensagem que pode ser descriptografada usando uma chave secreta ou uma
senha). A chave de assinatura é escolhida por padrão ou pode ser definida explicitamente usando as
opções --local-user e --default-key.
--clear-sign
--clearsign
Cria uma assinatura em texto simples. O conteúdo em uma assinatura em texto simples é legível sem nenhum software especial. O software OpenPGP é necessário apenas para verificar a assinatura. As assinaturas em texto simples podem modificar os espaços em branco no final da linha para independência de plataforma e não se destinam a serem reversíveis. A chave de assinatura é escolhida por padrão ou pode ser definida explicitamente usando as opções --local-user e --default-key.
--detach-sign
-b Cria uma assinatura destacada.
--encrypt
-e Criptografa dados para uma ou mais chaves públicas. Este comando pode ser combinado com --sign (para assinar e criptografar uma mensagem), --symmetric (para criptografar uma mensagem que pode ser descriptografada usando uma chave secreta ou uma senha) ou --sign e --symmetric juntos (para uma mensagem assinada que pode ser descriptografada usando uma chave secreta ou uma senha). As opções --recipient e relacionadas especificam quais chaves públicas usar para criptografia.
--symmetric
-c Criptografa com uma cifra simétrica usando uma senha. A cifra simétrica padrão usada é AES-128, mas pode ser escolhida com a opção --cipher-algo. Este comando pode ser combinado com --sign (para uma mensagem assinada e criptografada simetricamente), --encrypt (para uma mensagem que pode ser descriptografada por meio de uma chave secreta ou uma senha) ou --sign e --encrypt juntos (para uma mensagem assinada que pode ser descriptografada por meio de uma chave secreta ou uma senha). O gpg armazena em cache a senha usada para criptografia simétrica para que uma operação de descriptografia não exija que o usuário insira a senha. A opção --no-symkey-cache pode ser usada para desativar este recurso.
--store
Armazena apenas (cria um pacote de dados literal simples).
--decrypt
-d Descriptografa o arquivo especificado na linha de comando (ou STDIN se nenhum arquivo for especificado) e o grava em STDOUT (ou no arquivo especificado com --output). Se o arquivo descriptografado for assinado, a assinatura também é verificada. Este comando difere da operação padrão, pois nunca grava no nome do arquivo que está incluído no arquivo e rejeita arquivos que não começam com uma mensagem criptografada.
--verify
Assume que o primeiro argumento é um arquivo assinado e o verifica sem gerar nenhuma saída. Sem argumentos, o pacote de assinatura é lido de STDIN. Se apenas um argumento for fornecido, o arquivo especificado deverá incluir uma assinatura completa.
Com mais de um argumento, o primeiro argumento deve especificar um arquivo com uma assinatura destacada e os arquivos restantes devem conter os dados assinados. Para ler os dados assinados de STDIN, use '-' como o segundo nome de arquivo. Por motivos de segurança, uma assinatura destacada não lerá o material assinado de STDIN, a menos que seja especificado explicitamente.
Observação: Se a opção --batch não for usada, o gpg pode assumir que um único argumento é um arquivo com uma assinatura destacada e tentará encontrar o arquivo de dados correspondente removendo certos sufixos. Usar esse recurso histórico para verificar uma assinatura destacada é fortemente desencorajado; você sempre deve especificar o arquivo de dados explicitamente.
Observação: Ao verificar uma assinatura em texto simples, o gpg verifica apenas o que constitui os dados assinados em texto simples e não quaisquer dados extras fora da assinatura em texto simples ou das linhas de cabeçalho diretamente após a linha de separação. A opção --output pode ser usada para gravar os dados realmente assinados, mas existem outras armadilhas com este formato também. É sugerido evitar assinaturas em texto simples em favor de assinaturas destacadas.
Observação: Com a opção --batch, a verificação de assinaturas é interrompida na primeira assinatura inválida. Esta é uma configuração padrão segura para processamento não supervisionado, mas às vezes o status de todas as assinaturas é necessário. Para substituir esse cancelamento antecipado, use a opção --proc-all-sigs.
Observação: Para verificar se um arquivo foi assinado por uma determinada chave, a opção --assert-signer pode ser usada. Como alternativa, a ferramenta gpgv pode ser usada. O gpgv foi projetado para comparar os dados assinados com uma lista de chaves confiáveis e retorna com sucesso apenas para uma assinatura válida. Ele tem sua própria página de manual.
--multifile
Isso modifica certos outros comandos para aceitar vários arquivos para processamento na linha de comando ou ler do STDIN com cada nome de arquivo em uma linha separada. Isso permite que muitos arquivos sejam processados de uma vez. --multifile pode ser usado atualmente juntamente com --verify, --encrypt e --decrypt. Observe que --multifile --verify não pode ser usado com assinaturas destacadas.
--verify-files
Idêntico a --multifile --verify.
--encrypt-files
Idêntico a --multifile --encrypt.
--decrypt-files
Idêntico a --multifile --decrypt.
--list-keys
-k
--list-public-keys
Lista as chaves especificadas. Se nenhuma chave for especificada, todas as chaves dos chaveiros públicos configurados são listadas.
Nunca use a saída deste comando em scripts ou outros programas. A saída é destinada apenas a humanos e seu formato provavelmente mudará. A opção --with-colons emite a saída em um formato estável e analisável por máquina, que se destina a ser usado por scripts e outros programas.
--list-secret-keys
-K
Lista as chaves secretas especificadas. Se nenhuma chave for especificada, todas as chaves secretas conhecidas são listadas. Um # após as tags iniciais sec ou ssb significa que a chave secreta ou a subchave não está atualmente utilizável. Também dizemos que esta chave foi desconectada (por exemplo, uma chave primária pode ser desconectada exportando a chave usando o comando --export-secret-subkeys). Um > após essas tags indica que a chave é armazenada em um cartão inteligente. Veja também --list-keys.
--check-signatures
--check-sigs
O mesmo que --list-keys, mas as assinaturas da chave também são verificadas e listadas. Observe que, por motivos de desempenho, o status de revogação de uma chave de assinatura não é exibido. Este comando tem o mesmo efeito de usar --list-keys com --with-sig-check.
O status da verificação é indicado por uma flag diretamente após a tag "sig" (e, portanto, antes das flags descritas abaixo). Um "!" indica que a assinatura foi verificada com sucesso, um "-" denota uma assinatura inválida e um "%" é usado se ocorrer um erro ao verificar a assinatura (por exemplo, um algoritmo não suportado). Assinaturas onde a chave pública não está disponível não são listadas; para ver seus keyids, o comando --list-sigs pode ser usado.
Para cada assinatura listada, existem várias flags entre a flag de status da assinatura e o keyid. Essas flags fornecem informações adicionais sobre cada chave de assinatura. Da esquerda para a direita, são os números 1-3 para o nível de verificação do certificado (veja --ask-cert-level), "L" para uma assinatura local ou não exportável (veja --lsign-key), "R" para uma assinatura nãoRevogável (veja o comando --edit-key "nrsign"), "P" para uma assinatura que contém uma URL de política (veja --cert-policy-url), "N" para uma assinatura que contém uma notação (veja --cert-notation), "X" para uma assinatura expirada (veja --ask-cert-expire) e os números 1-9 ou "T" para 10 ou mais para indicar os níveis de assinatura de confiança (veja o comando --edit-key "tsign").
--locate-keys
--locate-external-keys
Localize as chaves fornecidas como argumentos. Este comando basicamente usa o mesmo algoritmo usado ao localizar chaves para criptografia e, portanto, pode ser usado para ver quais chaves o gpg pode usar. Em particular, métodos externos, conforme definido em --auto-key-locate, são usados para localizar uma chave se os argumentos contiverem endereços de e-mail válidos. Apenas chaves públicas são listadas.
A variante --locate-external-keys não considera uma chave existente localmente e, portanto, pode ser usada para forçar a atualização de uma chave por meio dos métodos externos definidos. Se uma impressão digital for fornecida e os métodos definidos em --auto-key-locate definirem servidores LDAP, a chave será obtida desses recursos; os servidores de chaves não-LDAP definidos são ignorados.
--show-keys
Este comando recebe chaves OpenPGP como entrada e imprime informações sobre elas da mesma forma que o comando --list-keys faz para chaves armazenadas localmente. Além disso, as opções de lista show-unusable-uids, show-unusable-subkeys, show-notations e show-policy-urls também são habilitadas. Como de costume para processamento automatizado, este comando deve ser combinado com a opção --with-colons.
--fingerprint
Liste todas as chaves (ou as especificadas) juntamente com suas impressões digitais. Esta é a mesma saída de --list-keys, mas com a adição de uma linha com a impressão digital. Também pode ser combinado com --check-signatures. Se este comando for fornecido duas vezes, as impressões digitais de todas as chaves secundárias também serão listadas. Este comando também força a impressão bonita de impressões digitais se o formato keyid estiver definido como "none".
--list-packets
Lista apenas a sequência de pacotes. Este comando é útil apenas para depuração. Quando usado com a opção --verbose, os valores MPI reais são exibidos e não apenas seus comprimentos. Observe que a saída deste comando pode mudar em novas versões.
--edit-card
--card-edit
Apresenta um menu para trabalhar com um cartão inteligente. O subcomando "help" fornece uma visão geral dos comandos disponíveis. Para uma descrição detalhada, consulte o Card HOWTO em https://gnupg.org/documentation/howtos.html#GnuPG-cardHOWTO. Observe que o comando "openpgp" pode ser usado para alternar para o aplicativo OpenPGP dos cartões, que por padrão apresentam outro aplicativo (por exemplo, PIV).
--card-status
Mostra o conteúdo do cartão inteligente.
--change-pin
Apresenta um menu para permitir a alteração do PIN de um cartão inteligente. Esta funcionalidade também está disponível como o subcomando "passwd" com o comando --edit-card.
--delete-keys name
Remove uma chave do chaveiro público. No modo em lote, é necessário --yes ou a chave deve ser especificada por impressão digital. Isso é uma proteção contra a exclusão acidental de várias chaves. Se a sintaxe de ponto de exclamação for usada com a impressão digital de uma subchave, apenas essa subchave é excluída; se o ponto de exclamação for usado com a impressão digital da chave primária, toda a chave pública é excluída.
--delete-secret-keys name
Remove uma chave do chaveiro secreto. No modo em lote, a chave deve ser especificada por impressão digital. A opção --yes pode ser usada para avisar o gpg-agent para não solicitar uma confirmação. Esta precaução extra é feita porque o gpg não pode ter certeza de que a chave secreta (conforme controlado pelo gpg-agent) é usada apenas para a chave OpenPGP pública fornecida. Se o símbolo de ponto de exclamação for usado com a impressão digital de uma subchave, apenas a parte secreta dessa subchave é excluída; se o ponto de exclamação for usado com a impressão digital da chave primária, apenas a parte secreta da chave primária é excluída.
--delete-secret-and-public-key name
Semelhante a --delete-key, mas se uma chave secreta existir, ela será removida primeiro. No modo em lote, a chave deve ser especificada por impressão digital. A opção --yes pode ser usada para avisar o gpg-agent para não solicitar uma confirmação.
--export
Exporta todas as chaves de todos os chaveiros (chaveiro padrão e aqueles registrados via opção --keyring) ou, se pelo menos um nome for fornecido, as chaves dos nomes fornecidos. As chaves exportadas são gravadas no STDOUT ou no arquivo fornecido com a opção --output. Use junto com --armor para enviar essas chaves por e-mail.
--send-keys keyIDs
Semelhante a --export, mas envia as chaves para um servidor de chaves. As impressões digitais podem ser usadas em vez dos IDs de chave. Não envie todo o seu chaveiro para um servidor de chaves – selecione apenas as chaves que são novas ou foram alteradas por você. Se nenhum keyID for fornecido, o gpg não faz nada.
Tenha cuidado: Os servidores de chaves são, por design, sistemas de gravação exclusiva e, portanto, não é possível excluir as chaves depois que elas foram enviadas para um servidor de chaves.
--export-secret-keys
--export-secret-subkeys
Similar a --export, mas exporta as chaves secretas. As chaves exportadas são gravadas no STDOUT ou no arquivo especificado com a opção --output. Este comando é frequentemente usado em conjunto com a opção --armor para permitir a impressão fácil da chave para backup em papel; no entanto, a ferramenta externa paperkey faz um trabalho melhor na criação de backups em papel. Observe que exportar uma chave secreta pode ser um risco de segurança se as chaves exportadas forem enviadas por um canal não seguro.
A segunda forma do comando tem a propriedade especial de tornar a parte secreta da chave primária inútil; esta é uma extensão GNU para OpenPGP, e outros softwares não devem ser esperados para importar essa chave com sucesso. Seu uso pretendido é gerar uma chave completa com uma subchave de assinatura adicional em uma máquina dedicada. Este comando então exporta a chave sem a chave primária para a máquina principal.
O GnuPG pode solicitar que você insira a senha da chave. Isso é necessário porque o método de proteção interna da chave secreta é diferente do especificado pelo protocolo OpenPGP.
--export-ssh-key
Este comando é usado para exportar uma chave no formato de chave pública OpenSSH. Ele requer a especificação de uma chave pelos meios habituais e exporta a subchave válida mais recente que tem a capacidade de autenticação para STDOUT ou para o arquivo especificado com a opção --output. Essa saída pode ser adicionada diretamente ao arquivo 'authorized_key' do ssh.
Ao especificar a chave a ser exportada usando um ID de chave ou uma impressão digital (fingerprint) seguida por um ponto de exclamação (!), uma subchave específica ou a chave primária podem ser exportadas. Isso nem mesmo requer que a chave tenha a flag de capacidade de autenticação definida.
--import
--fast-import
Importar/mesclar chaves. Isso adiciona as chaves fornecidas ao chaveiro. A versão rápida é atualmente apenas um sinônimo.
Existem algumas outras opções que controlam como este comando funciona. O mais notável aqui é a opção --import-options merge-only, que não insere novas chaves, mas apenas mescla novas assinaturas, IDs de usuário e subchaves.
--receive-keys keyIDs
--recv-keys keyIDs
Importar as chaves com os keyIDs fornecidos de um servidor de chaves.
--refresh-keys
Solicitar atualizações de um servidor de chaves para as chaves que já existem no chaveiro local. Isso é útil para atualizar uma chave com as assinaturas, IDs de usuário mais recentes, etc. Ao chamar isso sem argumentos, todo o chaveiro será atualizado.
--search-keys names
Pesquisar no servidor de chaves pelos nomes fornecidos. Vários nomes fornecidos aqui serão unidos para criar a string de pesquisa para o servidor de chaves. Observe que os servidores de chaves pesquisam nomes de uma maneira diferente e mais simples do que o gpg. A melhor escolha é usar um endereço de e-mail. Devido a razões de privacidade de dados, os servidores de chaves podem nem mesmo permitir a pesquisa por ID de usuário ou endereço de e-mail e, portanto, podem retornar resultados apenas quando usados com o comando --recv-key para pesquisar por impressão digital ou ID de chave.
--fetch-keys URIs
Recupera as chaves localizadas nos URIs especificados. Note que diferentes instalações do GnuPG podem suportar protocolos diferentes (HTTP, FTP, LDAP, etc.). Ao usar HTTPS, os certificados raiz fornecidos pelo sistema são usados por este comando.
--update-trustdb
Realiza a manutenção do banco de dados de confiança. Este comando itera sobre todas as chaves e constrói a Web de Confiança. Este é um comando interativo porque pode ser necessário solicitar os valores de "ownertrust" para as chaves. O usuário deve fornecer uma estimativa de quão longe ele confia no proprietário da chave exibida para certificar (assinar) outras chaves corretamente. O GnuPG solicita apenas o valor de "ownertrust" se ele ainda não tiver sido atribuído a uma chave. Usando o menu --edit-key, o valor atribuído pode ser alterado a qualquer momento.
--check-trustdb
Realiza a manutenção do banco de dados de confiança sem interação do usuário. De tempos em tempos, o banco de dados de confiança deve ser atualizado para que as chaves ou assinaturas expiradas e as alterações resultantes na Web de Confiança possam ser rastreadas. Normalmente, o GnuPG calcula quando isso é necessário e o faz automaticamente, a menos que --no-auto-check-trustdb seja definido. Este comando pode ser usado para forçar uma verificação do banco de dados de confiança a qualquer momento. O processamento é idêntico ao de --update-trustdb, mas ele ignora as chaves com um "ownertrust" ainda não definido.
Para uso com tarefas cron, este comando pode ser usado em conjunto com --batch, caso em que a verificação do banco de dados de confiança é feita apenas se uma verificação for necessária. Para forçar uma execução mesmo no modo em lote, adicione a opção --yes.
--export-ownertrust
Envia os valores de ownertrust para STDOUT. Isso é útil para fins de backup, pois esses são os únicos valores que não podem ser recriados a partir de um trustdb corrompido. Exemplo: gpg --export-ownertrust > otrust.txt
--import-ownertrust
Atualiza o trustdb com os valores de ownertrust armazenados em arquivos (ou STDIN se não for fornecido); os valores existentes serão sobrescritos. Em caso de um trustdb gravemente danificado e se você tiver um backup recente dos valores de ownertrust (por exemplo, no arquivo 'otrust.txt'), você pode recriar o trustdb usando estes comandos: cd ~/.gnupg rm trustdb.gpg gpg --import-ownertrust < otrust.txt
--rebuild-keydb-caches
Ao atualizar da versão 1.0.6 para 1.0.7, este comando deve ser usado para criar caches de assinatura no keyring. Também pode ser útil em outras situações.
--print-md algo
--print-mds
Imprime o hash de mensagem do algoritmo algo para todos os arquivos fornecidos ou STDIN. Com a segunda forma (ou um "*" descontinuado para algo), os hashes para todos os algoritmos disponíveis são impressos.
--gen-random 0|1|2|16|30 count
Emite count bytes aleatórios do nível de qualidade 0, 1 ou 2 especificado. Se count não for fornecido ou for zero, uma sequência infinita de bytes aleatórios será emitida. Se usado com --armor, a saída será codificada em base64. O nível especial 16 usa um nível de qualidade de 1 e gera um fluxo infinito de octetos codificados em hexadecimal. O nível especial 30 gera valores aleatórios como 30 caracteres zBase-32.
--gen-prime mode bits
Use o código fonte, Luke :-). O formato de saída pode mudar em qualquer versão.
--enarmor
--dearmor
Empacota ou descompacta uma entrada arbitrária em/de um formato ASCII OpenPGP. Esta é uma extensão GnuPG para OpenPGP e, em geral, não é muito útil. O comando --dearmor também pode ser usado para descompactar formatos PEM.
--unwrap
Esta opção modifica o comando --decrypt para exibir a mensagem original com a camada de criptografia removida. Assim, a saída será uma estrutura de dados OpenPGP, o que geralmente significa uma mensagem OpenPGP assinada. Observe que esta opção pode ou não remover uma camada de compressão que geralmente é encontrada abaixo da camada de criptografia.
--tofu-policy {auto|good|unknown|bad|ask} keys
Define a política TOFU para todos os vinculações associadas às chaves especificadas. Para obter mais informações sobre o significado das políticas, consulte: [trust-model-tofu]. As chaves podem ser especificadas por seu fingerprint (preferível) ou seu keyid.
Como gerenciar suas chaves
Esta seção explica os principais comandos para gerenciamento de chaves.
--quick-generate-key user-id [algo [usage [expire]]]
--quick-gen-key
Este é um comando simples para gerar uma chave padrão com um único user id. Em contraste com --generate-key, a chave é gerada diretamente, sem a necessidade de responder a várias perguntas. A menos que a opção --yes seja fornecida, a criação da chave será cancelada se o user id fornecido já existir no keyring.
Se invocado diretamente no console, sem opções especiais, uma resposta a um prompt de confirmação do tipo "Continuar?" será necessária. Caso o user id já exista no keyring, um segundo prompt para forçar a criação da chave será exibido.
Se algo ou usage forem fornecidos, apenas a chave primária é criada e nenhum prompt é exibido. Para especificar uma data de validade, mas ainda criar uma chave primária e uma subchave, use "default" ou "future-default" para algo e "default" para usage. Para uma descrição desses argumentos opcionais, consulte o comando --quick-add-key. O argumento usage também aceita o valor "cert", que pode ser usado para criar uma chave primária somente para certificação; o padrão é criar uma chave para certificação e assinatura.
O argumento expire pode ser usado para especificar uma data de validade para a chave. Vários formatos são suportados; comumente, os formatos ISO "AAAA-MM-DD" ou "AAAAAAMDDThhmmss" são usados. Para fazer com que a chave expire em N segundos, N dias, N semanas, N meses ou N anos, use "seconds=N", "Nd", "Nw", "Nm" ou "Ny", respectivamente. Não especificar um valor ou usar "-" resulta em uma chave que expira em um intervalo padrão razoável. Os valores "never" e "none" podem ser usados para nenhuma data de validade.
Se este comando for usado com --batch, --pinentry-mode tiver sido definido como loopback e uma das opções de senha (--passphrase, --passphrase-fd ou --passphrase-file) for usada, a senha fornecida será usada para a nova chave e o agente não a solicitará. Para criar uma chave sem nenhuma proteção, --passphrase "" pode ser usado.
Para criar uma chave OpenPGP a partir das chaves disponíveis no cartão inteligente inserido, a string especial ``card'' pode ser usada para o algoritmo. Se o cartão tiver uma chave de criptografia e uma chave de assinatura, o GPG irá identificá-las e criar uma chave OpenPGP consistindo na chave primária usual e uma subchave. Isso funciona apenas com certos cartões inteligentes. Note que o comando interativo --full-gen-key permite fazer o mesmo, mas com maior flexibilidade na seleção das chaves do cartão inteligente.
Note que é possível criar uma chave primária e uma subchave usando algoritmos não padrão, usando ``default'' e alterando os parâmetros padrão usando a opção --default-new-key-algo.
--quick-set-expire fpr expire [*|subfprs]
Com dois argumentos fornecidos, define diretamente o tempo de expiração da chave primária identificada por fpr para expirar. Para remover o tempo de expiração, 0 pode ser usado. Com três argumentos e o terceiro dado como um asterisco, o tempo de expiração de todas as subchaves não revogadas e ainda não expiradas é definido para expirar. Com mais de dois argumentos e uma lista de impressões digitais fornecidas para subfprs, todas as subchaves não revogadas que correspondem a essas impressões digitais são definidas para expirar.
--quick-add-key fpr [algo [usage [expire]]]
Adiciona diretamente uma subchave à chave identificada pela impressão digital fpr. Sem os argumentos opcionais, uma subchave de criptografia é adicionada. Se algum dos argumentos for fornecido, uma subchave mais específica é adicionada.
algo pode ser qualquer um dos algoritmos suportados ou nomes de curva dados no formato usado nas listagens de chaves. Para usar o algoritmo padrão, a string ``default'' ou ``-'' pode ser usada. Os algoritmos suportados são ``rsa'', ``dsa'', ``elg'', ``ed25519'', ``cv25519'' e outras curvas ECC. Por exemplo, a string ``rsa'' adiciona uma chave RSA com o comprimento de chave padrão; uma string ``rsa4096'' solicita que o comprimento da chave seja de 4096 bits. A string ``future-default'' é um alias para o algoritmo que provavelmente será usado como o algoritmo padrão em versões futuras do GPG. Para listar as curvas ECC suportadas, o comando gpg --with-colons --list-config curve pode ser usado.
Dependendo do algoritmo fornecido, a subchave pode ser uma subchave de criptografia ou uma subchave de assinatura. Se um algoritmo for capaz de assinar e criptografar, e uma subchave desse tipo for desejada, uma string de uso deve ser fornecida. Essa string é default'' ou-'' para manter o padrão, ou uma lista delimitada por vírgulas (ou lista delimitada por espaços) de palavras-chave: sign'' para uma subchave de assinatura,auth'' para uma subchave de autenticação e encr'' para uma subchave de criptografia (encrypt'' pode ser usado como alias para ``encr''). As combinações válidas dependem do algoritmo.
O argumento expire pode ser usado para especificar uma data de expiração para a chave. Vários formatos são suportados; normalmente, os formatos ISO YYYY-MM-DD'' ouYYYYMMDDThhmmss'' são usados. Para fazer com que a chave expire em N segundos, N dias, N semanas, N meses ou N anos, use seconds=N'',Nd'', Nw'',Nm'' ou Ny'', respectivamente. Não especificar um valor ou usar-'' resulta em uma chave que expira em um intervalo padrão razoável. Os valores never'',none'' podem ser usados para nenhuma data de expiração.
--quick-add-adsk fpr adskfpr
Adiciona diretamente uma Subchave de Descriptografia Adicional à chave identificada pelo fingerprint fpr.
adskfpr é o fingerprint da subchave de criptografia de outra chave. Uma subchave é comumente
usada aqui, porque, por padrão, uma chave primária não tem capacidade de criptografia. Use a opção
--with-subkey-fingerprint com um comando de listagem para exibir os fingerprints das subchaves. Se
a string "default" for usada para adskfpr, todas as ADSKs ausentes configuradas com --default-new-key-adsk serão adicionadas.
--generate-key
--gen-key
Gera um novo par de chaves usando os parâmetros padrão atuais. Este é o comando padrão para criar uma nova chave. Além da chave, um certificado de revogação é criado e
armazenado no diretório ‘openpgp-revocs.d’ abaixo do diretório inicial do GnuPG.
--full-generate-key
--full-gen-key
Gera um novo par de chaves com diálogos para todas as opções. Esta é uma versão estendida de
--generate-key.
Existe também um recurso que permite criar chaves em modo em lote. Veja a seção do manual “Geração de chaves não assistida” sobre como usar isso.
--generate-revocation name
--gen-revoke name
Gera um certificado de revogação para a chave completa. Para revogar apenas uma subchave ou uma assinatura de chave, use o comando --edit.
Este comando simplesmente cria o certificado de revogação para que ele possa ser usado para revogar a chave, caso isso seja necessário. Para realmente revogar uma chave, o certificado de revogação criado precisa ser mesclado com a chave a ser revogada. Isso é feito importando o certificado de revogação usando o comando --import. Em seguida, a chave revogada precisa ser publicada, o que é melhor feito enviando a chave para um servidor de chaves (comando --send-key) e exportando (--export) para um arquivo que é então enviado aos parceiros de comunicação frequentes.
--generate-designated-revocation name
--desig-revoke name
Gera um certificado de revogação designado para uma chave. Isso permite que um usuário (com a permissão do detentor da chave) revogue a chave de outra pessoa.
--edit-key
Apresenta um menu que permite realizar a maioria das tarefas relacionadas ao gerenciamento de chaves. Ele espera a especificação de uma chave na linha de comando.
uid n Alterna a seleção do ID do usuário ou ID do usuário fotográfico com o índice n. Use * para
selecionar todos e 0 para desselecionar todos.
key n Alterna a seleção da subchave com o índice n ou ID da chave n. Use * para selecionar todos e 0 para
desselecionar todos.
sign Cria uma assinatura na chave do usuário nome. Se a chave ainda não foi assinada pelo usuário padrão
(ou pelos usuários fornecidos com -u), o programa exibe as informações da chave
novamente, juntamente com seu fingerprint e pergunta se ela deve ser assinada. Isso
é repetido para todos os usuários especificados com -u.
lsign O mesmo que "sign", mas a assinatura é marcada como não exportável e, portanto, nunca será usada por outros. Isso pode ser usado para tornar as chaves válidas apenas no ambiente local.
nrsign O mesmo que "sign", mas a assinatura é marcada como não revogável e, portanto, nunca poderá ser revogada.
tsign Cria uma assinatura de confiança. Esta é uma assinatura que combina os conceitos de certificação (como uma assinatura normal) e confiança (como o comando "trust"). É geralmente útil em comunidades ou grupos distintos para implementar o conceito de um Introductor Confiável. Para obter mais informações, consulte as seções "Assinatura de Confiança" e "Expressão Regular" em RFC-4880.
Note que "l" (para local / não exportável), "nr" (para não revogável) e "t" (para confiança) podem ser livremente misturados e prefixados a "sign" para criar uma assinatura de qualquer tipo desejado.
Se a opção --only-sign-text-ids for especificada, quaisquer IDs de usuário não baseados em texto (por exemplo, IDs de foto) não serão selecionados para assinatura.
delsig Exclui uma assinatura. Observe que não é possível retirar uma assinatura, uma vez que ela tenha sido enviada para o público (ou seja, para um servidor de chaves). Nesse caso, é melhor usar revsig.
revsig Revoga uma assinatura. Para cada assinatura que foi gerada por uma das chaves privadas, o GnuPG pergunta se um certificado de revogação deve ser gerado.
check Verifica as assinaturas em todos os IDs de usuário selecionados. Com a opção extra selfsig, apenas as autoassinaturas são mostradas.
adduid Cria um ID de usuário adicional.
addphoto Cria um ID de usuário fotográfico. Isso solicitará um arquivo JPEG que será incorporado ao ID de usuário. Observe que um JPEG muito grande resultará em uma chave muito grande. Observe também que alguns programas exibirão seu JPEG inalterado (GnuPG) e alguns programas o redimensionarão para caber em uma caixa de diálogo (PGP).
showphoto Exibe o ID de usuário fotográfico selecionado.
deluid Exclui um ID de usuário ou ID de usuário fotográfico. Observe que não é possível retirar um ID de usuário, uma vez que ele tenha sido enviado para o público (ou seja, para um servidor de chaves). Nesse caso, é melhor usar revuid.
revuid Revoga um ID de usuário ou ID de usuário fotográfico.
primary Define o ID de usuário atual como o principal, remove a marca de ID de usuário principal de todos os outros IDs de usuário e define o timestamp de todas as autoassinaturas afetadas um segundo à frente. Observe que definir um ID de usuário de foto como principal o torna principal em relação a outros IDs de usuário de foto e definir um ID de usuário regular como principal o torna principal em relação a outros IDs de usuário regulares.
keyserver Define um servidor de chaves preferido para os IDs de usuário especificados. Isso permite que outros usuários saibam de onde você prefere que eles obtenham sua chave. Consulte --keyserver-options honor-keyserver-url para obter mais informações sobre como isso funciona. Definir um valor como "none" remove um servidor de chaves preferido existente.
notation Define uma notação name=value para os IDs de usuário especificados. Consulte --cert-notation para obter mais informações sobre como isso funciona. Definir um valor como "none" remove todas as notações, definir uma notação prefixada com um sinal de menos (-) remove essa notação e definir um nome de notação (sem o =value) prefixado com um sinal de menos remove todas as notações com esse nome.
pref Listar as preferências do ID de usuário selecionado. Isso mostra as preferências reais, sem incluir as preferências implícitas.
showpref
Listagem de preferências mais detalhada para o ID de usuário selecionado. Isso mostra as preferências em vigor, incluindo as preferências implícitas de 3DES (cifra), SHA-1 (digest) e Não Compactado (compressão), caso elas ainda não estejam incluídas na lista de preferências. Além disso, o servidor de chaves preferido e as assinaturas (se houver) são mostrados.
setpref string
Definir a lista de preferências de ID de usuário para string para todos (ou apenas os) IDs de usuário selecionados. Chamar setpref sem argumentos define a lista de preferências para o padrão (seja embutido ou definido via --default-preference-list), e chamar setpref com "none" como argumento define uma lista de preferências vazia. Use gpg --version para obter uma lista de algoritmos disponíveis. Observe que, embora você possa alterar as preferências em um ID de usuário de atributo (também conhecido como "ID de foto"), o GnuPG não seleciona chaves por meio de IDs de usuário de atributo, portanto, essas preferências não serão usadas pelo GnuPG. Observe que uma versão não interativa deste comando está disponível como --quick-update-pref.
Ao definir preferências, você deve listar os algoritmos na ordem em que deseja que eles sejam usados por outra pessoa ao criptografar uma mensagem para sua chave. Se você não incluir 3DES, ele será adicionado automaticamente no final. Observe que há muitos fatores que influenciam a escolha de um algoritmo (por exemplo, sua chave pode não ser o único destinatário), e, portanto, o aplicativo OpenPGP remoto que está sendo usado para enviar para você pode ou não seguir sua ordem exata escolhida para uma determinada mensagem. No entanto, ele escolherá apenas um algoritmo que esteja presente na lista de preferências de todas as chaves de destinatário. Consulte também a seção INTEROPERABILIDADE COM OUTROS PROGRAMAS OPENPGP abaixo.
addkey Adicionar uma subchave a esta chave.
addcardkey
Gerar uma subchave em um cartão e adicioná-la a esta chave.
keytocard
Transferir a subchave secreta selecionada (ou a chave primária, se nenhuma subchave tiver sido selecionada) para um cartão inteligente. A chave secreta no chaveiro será substituída por um espaço reservado se a chave puder ser armazenada com sucesso no cartão e você usar o comando salvar posteriormente. Apenas certos tipos de chaves podem ser transferidos para o cartão. Um submenu permite que você selecione em qual cartão armazenar a chave. Observe que não é possível recuperar essa chave do cartão – se o cartão for danificado, sua chave secreta será perdida, a menos que você tenha um backup em algum lugar.
bkuptocard file
Restaurar o arquivo fornecido em um cartão. Este comando pode ser usado para restaurar um arquivo de backup (conforme gerado durante a inicialização do cartão) para um novo cartão. Na maioria dos casos, será a chave de criptografia. Você deve usar este comando apenas com a chave pública correspondente e garantir que o arquivo fornecido como argumento seja realmente o backup a ser restaurado. Em seguida, você deverá selecionar 2 para restaurar como chave de criptografia. Primeiro, você será solicitado a inserir a senha da chave de backup e, em seguida, o PIN do administrador do cartão.
keytotpm
Transfere a subchave secreta selecionada (ou a chave primária, se nenhuma subchave estiver selecionada) para o formato TPM. A chave secreta no chaveiro será substituída pela representação TPM dessa chave, que só pode ser lida pelo TPM específico que a criou (portanto, o arquivo de chave agora fica bloqueado ao laptop que contém o TPM). Apenas certos tipos de chaves podem ser transferidos para o TPM (todos os sistemas TPM 2.0 são obrigados a ter os algoritmos rsa2048 e nistp256, mas os TPMs mais recentes podem ter mais). Observe que a própria chave não é transferida para o TPM, apenas criptografada no local, portanto, se o arquivo de chave for excluído, a chave será perdida. Depois de transferida para a representação TPM, a chave não pode mais ser convertida de volta para o formato não TPM, e a chave morrerá quando o TPM morrer, portanto, você deve primeiro ter um backup em um armazenamento offline seguro do arquivo de chave secreta real antes da conversão. É essencial usar o sistema TPM físico que você tem permissão de leitura/gravação no gerenciador de recursos TPM (/dev/tpmrm0). Normalmente, isso significa que você deve ser membro do grupo tss.
delkey
Remove uma subchave (chave secundária). Observe que não é possível reverter uma subchave depois que ela foi enviada para o público (ou seja, para um servidor de chaves). Nesse caso, é melhor usar revkey. Além disso, observe que isso exclui apenas a parte pública de uma chave.
revkey
Revoga uma subchave.
expire
Altera o tempo de expiração da chave ou subchave. Se uma subchave for selecionada, o tempo de expiração desta subchave será alterado. Sem nenhuma seleção, o tempo de expiração da chave primária será alterado.
trust
Altera o valor de confiança do proprietário para a chave. Isso atualiza o banco de dados de confiança imediatamente e não requer salvamento.
disable
enable
Desabilita ou habilita uma chave inteira. Uma chave desabilitada normalmente não pode ser usada para criptografia.
addrevoker
Adiciona um revogador designado à chave. Isso recebe um argumento opcional: "sensitive". Se um revogador designado for marcado como confidencial, ele não será exportado por padrão (veja as opções de exportação).
addadsk
Adiciona uma Subchave de Decriptação Adicional. O usuário é solicitado a inserir a impressão digital de outra subchave de criptografia. Observe que a impressão digital exata da subchave de criptografia de outra chave precisa ser inserida. Isso ocorre porque, normalmente, a chave primária não tem capacidade de criptografia. Use a opção --with-subkey-fingerprint com um comando de lista para exibir as impressões digitais das subchaves.
passwd
Altera a frase secreta da chave secreta.
toggle
Este é um comando fictício que existe apenas para compatibilidade com versões anteriores.
clean
Compacta (removendo todas as assinaturas, exceto a autoassinatura) qualquer ID de usuário que não seja mais utilizável (por exemplo, revogado ou expirado). Em seguida, remove quaisquer assinaturas que não sejam utilizáveis pelos cálculos de confiança. Especificamente, isso remove qualquer assinatura que não seja válida, qualquer assinatura que seja substituída por uma assinatura posterior, assinaturas revogadas e assinaturas emitidas por chaves que não estão presentes no chaveiro.
minimize
Tornar a chave o menor possível. Isto remove todas as assinaturas de cada ID de usuário, exceto a auto-assinatura mais recente.
change-usage
Alterar os sinalizadores de uso (capacidades) da chave primária ou das subchaves. Estes sinalizadores (ex.: Certify, Sign, Authenticate, Encrypt) são definidos durante a criação da chave. Por vezes, é útil ter a oportunidade de os alterar (por exemplo, para adicionar Authenticate) após a criação. Tenha cuidado ao fazer isto; os sinalizadores permitidos dependem do algoritmo da chave.
cross-certify
Adicionar assinaturas de certificação cruzada a subchaves de assinatura que possam não as ter atualmente. As assinaturas de certificação cruzada protegem contra um ataque subtil contra subchaves de assinatura. Consulte --require-cross-certification. Todas as chaves novas geradas têm esta assinatura por padrão, pelo que este comando só é útil para atualizar chaves mais antigas.
save Guardar todas as alterações no chaveiro e sair.
quit Sair do programa sem atualizar o chaveiro.
A listagem mostra a chave com as suas chaves secundárias e todos os IDs de usuário. O ID de usuário primário é indicado por um ponto, e as chaves ou IDs de usuário selecionados são indicados por um asterisco. O valor de confiança é exibido com a chave primária: "trust" é a confiança do proprietário atribuída e "validity" é a validade calculada da chave. Os valores de validade também são exibidos para todos os IDs de usuário. Para valores possíveis de confiança, veja: [trust-values].
--sign-key name
Assina uma chave pública com a sua chave secreta. Esta é uma versão abreviada do subcomando "sign" de --edit-key.
--lsign-key name
Assina uma chave pública com a sua chave secreta, mas marca-a como não exportável. Esta é uma versão abreviada do subcomando "lsign" de --edit-key.
--quick-sign-key fpr [names]
--quick-lsign-key fpr [names]
Assinar diretamente uma chave a partir da frase-passe sem qualquer outra interação do utilizador. O fpr deve ser a impressão digital primária verificada de uma chave no chaveiro local. Se não forem dados nomes, todos os IDs de usuário úteis são assinados; com [names] fornecidos, apenas os IDs de usuário úteis correspondentes a um destes nomes são assinados. Por padrão, ou se um nome for prefixado com '*', é usada uma correspondência por substring sem distinção entre maiúsculas e minúsculas. Se um nome for prefixado com '=', é feita uma correspondência exata com distinção entre maiúsculas e minúsculas.
O comando --quick-lsign-key marca as assinaturas como não exportáveis. Se tal assinatura não exportável já existir, o --quick-sign-key transforma-a numa assinatura exportável. Se precisar de atualizar uma assinatura existente, por exemplo, para adicionar ou alterar dados de notação, precisa de usar a opção --force-sign-key.
Este comando usa valores padrão razoáveis e, portanto, não oferece a flexibilidade total do subcomando "sign" de --edit-key. Seu uso pretendido é ajudar na assinatura de chaves não interativa, utilizando uma lista de impressões digitais verificadas.
--quick-add-uid user-id new-user-id
Este comando adiciona um novo ID de usuário a uma chave existente. Em contraste com o subcomando interativo adduid de --edit-key, o new-user-id é adicionado literalmente, com apenas espaços em branco à esquerda e à direita removidos. Espera-se que seja codificado em UTF-8 e nenhum teste sobre seu formato é aplicado.
--quick-revoke-uid user-id user-id-to-revoke
Este comando revoga um ID de usuário em uma chave existente. Não pode ser usado para revogar o último ID de usuário em uma chave (algum ID de usuário não revogado deve permanecer), com o motivo de revogação "O ID de usuário não é mais válido". Se você deseja especificar um motivo de revogação diferente ou fornecer texto de revogação complementar, você deve usar o subcomando interativo revuid de --edit-key.
--quick-revoke-sig fpr signing-fpr [names]
Este comando revoga as assinaturas de chave feitas por signing-fpr da chave especificada pela impressão digital fpr. Com os nomes fornecidos, apenas as assinaturas nos IDs de usuário da chave que correspondam a qualquer um dos nomes fornecidos são afetadas (veja --quick-sign-key). Se uma revogação já existir, uma mensagem será exibida em vez de criar uma nova revogação; nenhum erro será retornado neste caso. Observe que as revogações de assinatura de chave podem ser substituídas por uma assinatura de chave mais recente e, por sua vez, revogadas novamente.
--quick-set-primary-uid user-id primary-user-id
Este comando define ou atualiza o sinalizador de ID de usuário primário em uma chave existente. user-id especifica a chave e primary-user-id o ID de usuário que deve ser sinalizado como o ID de usuário primário. O sinalizador de ID de usuário primário é removido de todos os outros IDs de usuário e o timestamp de todas as assinaturas de confirmação afetadas é definido um segundo à frente.
--quick-update-pref user-id
Este comando atualiza a lista de preferências da chave para o valor padrão atual (seja embutido ou definido via --default-preference-list). Esta é a versão não interativa de usar "setpref" no menu --key-edit sem fornecer uma lista. Observe que você pode exibir as preferências em uma lista de chaves usando --list-options show-pref ou --list-options show-pref-verbose. Você também deve redistribuir as chaves atualizadas para seus pares.
--quick-set-ownertrust user-id value
Este comando define a confiança do proprietário de uma chave e também pode ser usado para definir o sinalizador de desativação de uma chave. Esta é a versão não interativa de usar "trust", "disable" ou "enable" no menu --key-edit.
--change-passphrase user-id
--passwd user-id
Altera a frase secreta da chave secreta pertencente ao certificado especificado como user-id. Este é um atalho para o subcomando passwd do menu --edit-key. Ao usar em conjunto com a opção --dry-run, isso não alterará realmente a frase secreta, mas verificará se a frase secreta atual está correta.
OPÇÕES
O gpg possui várias opções para controlar o comportamento exato e alterar a configuração padrão.
As opções longas podem ser colocadas em um arquivo de opções (padrão "~/.gnupg/gpg.conf"). Os nomes de opções curtos não funcionarão; por exemplo, "armor" é uma opção válida para o arquivo de opções, enquanto "a" não é. Não escreva os dois hífens, mas simplesmente o nome da opção e quaisquer argumentos necessários. As linhas que começam com um caractere de hash ('#') são ignoradas. Os comandos também podem ser colocados neste arquivo, mas isso geralmente não é útil, pois o comando será executado automaticamente a cada execução do gpg.
Lembre-se de que a análise das opções para assim que um argumento não-opção é encontrado; você pode interromper explicitamente a análise usando a opção especial --.
Como alterar a configuração
Essas opções são usadas para alterar a configuração e a maioria delas geralmente é encontrada no arquivo de opções.
--default-key name
Use name como a chave padrão para assinar. É sugerido usar uma impressão digital ou pelo menos um ID de chave longo para name. Se esta opção não for usada, a chave padrão é a primeira chave encontrada no chaveiro secreto. Observe que -u ou --local-user substitui esta opção. Esta opção pode ser fornecida várias vezes. Nesse caso, a última chave para a qual uma chave secreta está disponível será usada. Se não houver uma chave secreta disponível para nenhum dos valores especificados, o GnuPG não emitirá uma mensagem de erro, mas continuará como se esta opção não tivesse sido fornecida.
--default-recipient name
Use name como o destinatário padrão se a opção --recipient não for usada e não pergunte se este é um destinatário válido. name deve ser não vazio e é sugerido usar uma impressão digital para name.
--default-recipient-self
Use a chave padrão como o destinatário padrão se a opção --recipient não for usada e não pergunte se este é um destinatário válido. A chave padrão é a primeira do chaveiro secreto ou a especificada com --default-key.
--no-default-recipient
Redefina --default-recipient e --default-recipient-self. Não deve ser usado em um arquivo de opções.
-v, --verbose
Forneça mais informações durante o processamento. Se usado duas vezes, os dados de entrada são listados em detalhes.
--no-verbose
Redefina o nível de detalhe para 0. Não deve ser usado em um arquivo de opções.
-q, --quiet
Tente ser o mais silencioso possível. Não deve ser usado em um arquivo de opções.
--batch
--no-batch
Use o modo batch. Nunca pergunte, não permita comandos interativos. --no-batch desativa esta opção. Observe que, mesmo com um nome de arquivo fornecido na linha de comando, o gpg ainda pode precisar ler do STDIN (particularmente se o gpg determinar que a entrada é uma assinatura destacada e nenhum arquivo de dados foi especificado). Portanto, se você não quiser fornecer dados via STDIN, deverá conectar o STDIN a '/dev/null'.
É altamente recomendável usar esta opção junto com as opções --status-fd e --with-colons para qualquer uso não assistido do gpg. Não deve ser usado em um arquivo de opções.
--no-tty
Certifique-se de que o TTY (terminal) nunca seja usado para nenhuma saída. Esta opção é necessária em alguns casos, porque o GnuPG às vezes imprime avisos para o TTY, mesmo que --batch seja usado.
--yes Assume "yes" para a maioria das perguntas. Não deve ser usado em um arquivo de opções.
--no Assume "no" para a maioria das perguntas. Não deve ser usado em um arquivo de opções.
--proc-all-sigs
Esta opção substitui o comportamento da opção --batch para interromper a verificação de assinatura na primeira assinatura inválida.
--list-filter {select=expr}
Um filtro de lista pode ser usado para exibir apenas certas chaves durante os comandos de listagem de chaves. Para os nomes de propriedades disponíveis, consulte a descrição de --import-filter.
--list-options parameters
Esta é uma string delimitada por espaços ou vírgulas que fornece as opções usadas ao listar chaves e assinaturas (ou seja, --list-keys, --check-signatures, --list-public-keys, --list-secret-keys e as funções --edit-key). As opções podem ser precedidas por um "no-" (após os dois traços) para dar o significado oposto. As opções são:
show-photos
Faz com que --list-keys, --check-signatures, --list-public-keys e --list-secret-keys exibam quaisquer IDs de fotos anexados à chave. O padrão é "no". Veja também --photo-viewer. Não funciona com --with-colons: veja --attribute-fd para a maneira apropriada de obter dados de fotos para scripts e outros frontends.
show-usage
Mostra informações de uso para chaves e subchaves na listagem padrão de chaves. Esta é uma lista de letras indicando o uso permitido para uma chave (E=criptografia, S=assinatura, C=certificação, A=autenticação). O padrão é "yes".
show-ownertrust
Mostra o valor de ownertrust para as chaves também na listagem padrão de chaves. O padrão é "no".
show-policy-urls
Mostra URLs de política nas listagens de --check-signatures. O padrão é "no".
show-notations
show-std-notations
show-user-notations
Mostra todas, as anotações padrão IETF ou as anotações definidas pelo usuário nas listagens de --check-signatures. O padrão é "no".
show-keyserver-urls
Mostra qualquer URL de servidor de chaves preferido nas listagens de --check-signatures. O padrão é "no".
show-uid-validity
Exibe a validade calculada das IDs de usuário durante as listagens de chaves. O padrão é "yes".
show-unusable-uids
Mostra IDs de usuário revogados e expirados nas listagens de chaves. O padrão é "no".
show-unusable-subkeys
Mostra subchaves revogadas e expiradas nas listagens de chaves. O padrão é "no".
show-unusable-sigs
Mostra assinaturas de chave feitas usando algoritmos fracos ou não suportados.
show-keyring
Exibe o nome do chaveiro no cabeçalho das listagens de chaves para mostrar em qual chaveiro uma determinada chave reside. O padrão é "no".
show-sig-expire
Mostra as datas de expiração da assinatura (se houver) durante as listagens de --check-signatures. O padrão é "no".
show-sig-subpackets
Inclui subpacotes de assinatura na listagem de chaves. Esta opção pode ter um argumento opcional, uma lista de subpacotes para listar. Se nenhum argumento for passado, liste todos os subpacotes. O padrão é "no". Esta opção só é significativa quando você estiver usando --with-colons junto com --check-signatures.
show-only-fpr-mbox
Para cada ID de usuário que tenha um endereço de e-mail válido, exiba apenas a impressão digital seguida pelo endereço de e-mail.
sort-sigs
Com as opções --list-sigs e --check-sigs, as assinaturas são ordenadas por keyID e tempo de criação para facilitar a visualização do histórico dessas assinaturas. A auto-assinatura também é listada antes das outras assinaturas. O padrão é sim. Esta opção não tem efeito no modo -with-colons.
--verify-options parameters
Esta é uma string delimitada por espaços ou vírgulas que fornece opções usadas ao verificar assinaturas. As opções podem ser precedidas por no- para fornecer o significado oposto. As opções são:
show-photos
Exibe quaisquer IDs de foto presentes na chave que emitiu a assinatura. O padrão é não. Consulte também --photo-viewer.
show-policy-urls
Mostra URLs de política na assinatura que está sendo verificada. O padrão é sim.
show-notations
show-std-notations
show-user-notations
Mostra todas, as anotações de assinatura IETF padrão ou as anotações definidas pelo usuário na assinatura que está sendo verificada. O padrão é IETF padrão.
show-keyserver-urls
Mostra qualquer URL de servidor de chaves preferido na assinatura que está sendo verificada. O padrão é sim.
show-uid-validity
Exibe a validade calculada dos IDs de usuário na chave que emitiu a assinatura. O padrão é sim.
show-unusable-uids
Mostra IDs de usuário revogados e expirados durante a verificação da assinatura. O padrão é não.
show-primary-uid-only
Mostra apenas o ID de usuário primário durante a verificação da assinatura. Ou seja, todas as linhas AKA, bem como os IDs de foto, não são mostrados com o status de verificação da assinatura.
--enable-large-rsa
--disable-large-rsa
Habilita a criação de chaves secretas RSA com até 8192 bits. Observe: 8192 bits é mais do que o geralmente recomendado. Essas chaves grandes não melhoram significativamente a segurança, mas são mais caras de usar e suas assinaturas e certificações são maiores. Esta opção está disponível apenas se o binário foi construído com suporte a large-secmem.
--enable-dsa2
--disable-dsa2
Habilita a truncagem de hash para todas as chaves DSA, mesmo para chaves DSA antigas de até 1024 bits. Esta também é a configuração padrão com --openpgp. Observe que versões mais antigas do GnuPG também exigiam esta flag para permitir a geração de DSA maiores que 1024 bits.
--photo-viewer string
Este é o comando que deve ser executado para visualizar um ID de foto. "%i" será expandido para um nome de arquivo que contém a foto. "%I" faz o mesmo, exceto que o arquivo não será excluído quando o visualizador for fechado. Outras flags são "%k" para o ID da chave, "%K" para o ID longo da chave, "%f" para a impressão digital da chave, "%t" para a extensão do tipo de imagem (por exemplo, "jpg"), "%T" para o tipo MIME da imagem (por exemplo, "image/jpeg"), "%v" para a validade de um único caractere calculada da imagem que está sendo visualizada (por exemplo, "f"), "%V" para a validade calculada como uma string (por exemplo, "full"), "%U" para um hash codificado em base32 do ID do usuário e "%%" para um percentual real. Se nem %i nem %I estiverem presentes, a foto será fornecida ao visualizador na entrada padrão.
No Unix, o visualizador padrão é xloadimage -fork -quiet -title 'KeyID 0x%k' STDIN com um fallback para display -title 'KeyID 0x%k' %i e, finalmente, para xdg-open %i. No Windows, !ShellExecute 400 %i é usado; aqui, o comando é um meta-comando para usar essa chamada de API, seguido por um tempo de espera em milissegundos, que é usado para dar ao visualizador tempo para ler o arquivo de imagem temporário antes que o gpg o exclua novamente. Observe que, se o programa do seu visualizador de imagens não for seguro, executá-lo a partir do gpg não o torna seguro.
--exec-path string
Define uma lista de diretórios para pesquisar visualizadores de fotos. Se não for fornecido, os visualizadores de fotos usarão a variável de ambiente PATH.
--keyring file
Adicione o arquivo à lista atual de keyrings. Se o arquivo começar com um til e uma barra, estes serão substituídos pelo diretório $HOME. Se o nome do arquivo não contiver uma barra, assume-se que ele está no diretório inicial do GnuPG ("~/.gnupg", a menos que --homedir ou $GNUPGHOME seja usado).
Observe que isso adiciona um keyring à lista atual. Se a intenção for usar o keyring especificado sozinho, use --keyring junto com --no-default-keyring.
Se a opção --no-keyring foi usada, nenhum keyring será usado.
Observe que, se a opção use-keyboxd estiver habilitada em 'common.conf', nenhum keyring será usado e todas as chaves serão mantidas pelo processo keyboxd em seu próprio banco de dados.
--primary-keyring file
Esta é uma variação de --keyring e designa o arquivo como o keyring público primário. Isso significa que as chaves recém-importadas (via --import ou keyserver --recv-from) serão colocadas neste keyring.
--secret-keyring file
Esta é uma opção obsoleta e é ignorada. Todas as chaves secretas são armazenadas no diretório 'private-keys-v1.d' abaixo do diretório inicial do GnuPG.
--trustdb-name file
Use o arquivo em vez do trustdb padrão. Se o arquivo começar com um til e uma barra, estes serão substituídos pelo diretório $HOME. Se o nome do arquivo não contiver uma barra, assume-se que ele está no diretório inicial do GnuPG ('~/.gnupg' se --homedir ou $GNUPGHOME não for usado).
--homedir dir
Define o nome do diretório inicial para dir. Se esta opção não for usada, o diretório inicial padrão é '~/.gnupg'. Ele é reconhecido apenas quando fornecido na linha de comando. Também substitui qualquer diretório inicial especificado pela variável de ambiente 'GNUPGHOME' ou (em sistemas Windows) por meio da entrada do Registro HKCU\Software\GNU\GnuPG:HomeDir.
Em sistemas Windows, é possível instalar o GnuPG como um aplicativo portátil. Neste caso, apenas esta opção de linha de comando é considerada; todos os outros métodos de definição de um diretório inicial são ignorados.
--display-charset name
Define o nome do conjunto de caracteres nativo. Isso é usado para converter algumas strings informativas, como IDs de usuário, para a codificação UTF-8 correta. Observe que isso não tem nada a ver com o conjunto de caracteres dos dados a serem criptografados ou assinados; o GnuPG não recodifica os dados fornecidos pelo usuário. Se esta opção não for usada, o conjunto de caracteres padrão é determinado pelas configurações de local atuais. Um nível de verbosidade de 3 mostra o conjunto escolhido. Esta opção não deve ser usada no Windows. Valores válidos para name são:
iso-8859-1
Este é o conjunto Latin 1.
iso-8859-2
O conjunto Latin 2.
iso-8859-15
Atualmente, este é um alias para o conjunto Latin 1.
koi8-r O conjunto russo usual (RFC-1489).
utf-8 Ignora todas as traduções e assume que o sistema operacional usa codificação UTF-8 nativa.
--utf8-strings
--no-utf8-strings
Assume que os argumentos da linha de comando são fornecidos como strings UTF-8. O padrão (--no-utf8-strings) é assumir que os argumentos são codificados no conjunto de caracteres especificado por --display-charset. Essas opções afetam todos os argumentos subsequentes. Ambas as opções podem ser usadas várias vezes. Esta opção não deve ser usada em um arquivo de opções.
Esta opção não tem efeito no Windows. Lá, a codificação UTF-8 interna usada é traduzida para entrada e saída do console. Os argumentos da linha de comando são esperados como Unicode e traduzidos para UTF-8. Portanto, ao chamar este programa a partir de outro, certifique-se de usar a versão Unicode de CreateProcess.
--options file
Lê opções do arquivo e não tenta lê-las do arquivo de opções padrão no diretório pessoal (veja --homedir). Esta opção é ignorada se usada em um arquivo de opções.
--no-options
Atalho para --options /dev/null. Esta opção é detectada antes de qualquer tentativa de abrir um arquivo de opções. O uso desta opção também impedirá a criação de um diretório ‘\~/.gnupg’.
-z n
--compress-level n
--bzip2-compress-level n
--no-compress
Define o nível de compressão para n para os algoritmos de compressão ZIP e ZLIB. O padrão é usar o nível de compressão padrão do zlib (normalmente 6). --bzip2-compress-level define o nível de compressão para o algoritmo de compressão BZIP2 (também com padrão de 6). Esta é uma opção diferente de --compress-level, pois o BZIP2 usa uma quantidade significativa de memória para cada nível de compressão adicional.
A opção -z define ambos. Um valor de 0 para n desabilita a compressão. Um valor de -1 força a compressão usando o nível padrão. A opção --no-compress é idêntica a -z0.
Exceto para o comando --store, a compressão é sempre usada, a menos que o GnuPG detecte que a entrada já está comprimida. Para inibir o uso da compressão, use -z0 ou --no-compress; para forçar a compressão, use -z-1 ou a opção z com outro nível de compressão diferente do padrão, conforme indicado por -1. Observe que este overriding do padrão de detecção funciona apenas com z e não com a versão longa desta opção.
--bzip2-decompress-lowmem
Use um método de descompressão diferente para arquivos compactados BZIP2. Este método alternativo usa um pouco mais da metade da memória, mas também é executado com metade da velocidade. Isso é útil em circunstâncias extremas de baixa memória, quando o arquivo foi originalmente compactado em um nível alto de --bzip2-compress-level.
--mangle-dos-filenames
--no-mangle-dos-filenames
Versões mais antigas do Windows não conseguem lidar com nomes de arquivo com mais de um ponto. --mangle-dos-filenames faz com que o GnuPG substitua (em vez de adicionar) a extensão de um nome de arquivo de saída para evitar esse problema. Esta opção está desativada por padrão e não tem efeito em plataformas que não sejam Windows.
--ask-cert-level
--no-ask-cert-level
Ao criar uma chave de assinatura, solicitar o nível de certificação. Se esta opção não for especificada, o nível de certificação usado é definido via --default-cert-level. Veja --default-cert-level para informações sobre os níveis específicos e como eles são usados. --no-ask-cert-level desativa esta opção. Esta opção tem como padrão "não".
--default-cert-level n
O padrão a ser usado para o nível de verificação ao assinar uma chave.
0 significa que você não faz nenhuma alegação específica sobre o quão cuidadosamente você verificou a chave.
1 significa que você acredita que a chave pertence à pessoa que afirma possuí-la, mas você não conseguiu ou não verificou a chave. Isso é útil para uma verificação de "persona", onde você assina a chave de um usuário pseudônimo.
2 significa que você fez uma verificação casual da chave. Por exemplo, isso pode significar que você verificou a impressão digital da chave e verificou o ID do usuário na chave em relação a um documento de identificação com foto.
3 significa que você fez uma verificação extensa da chave. Por exemplo, isso pode significar que você verificou a impressão digital da chave com o proprietário da chave pessoalmente e que você verificou, por meio de um documento difícil de falsificar com uma identificação com foto (como um passaporte), que o nome do proprietário da chave corresponde ao nome no ID do usuário na chave e, finalmente, que você verificou (por meio de troca de e-mail) que o endereço de e-mail na chave pertence ao proprietário da chave.
Observe que os exemplos fornecidos acima para os níveis 2 e 3 são apenas isso: exemplos. No final, cabe a você decidir o que "casual" e "extenso" significam para você.
Esta opção tem como padrão 0 (nenhuma alegação específica).
--min-cert-level
Ao construir o banco de dados de confiança, trate todas as assinaturas com um nível de certificação abaixo deste como inválidas. O padrão é 2, o que ignora as assinaturas de nível 1. Observe que as assinaturas de nível 0 "nenhuma alegação específica" são sempre aceitas.
--trusted-key long key ID or fingerprint
Assuma que a chave especificada (que deve ser fornecida como impressão digital) é tão confiável quanto uma de suas próprias chaves secretas. Esta opção é útil se você não quiser manter suas chaves secretas (ou uma delas) online, mas ainda quiser poder verificar a validade da chave de um determinado destinatário ou signatário. Se a chave fornecida não estiver disponível localmente, mas um servidor de chaves LDAP estiver configurado, a chave ausente é importada desse servidor. O valor "nenhum" é explicitamente permitido para distinguir entre o uso de qualquer opção trusted-key e nenhum uso desta opção (por exemplo, devido à opção --no-options).
--add-desig-revoker [sensitive:]fingerprint
Adicione a chave especificada pela impressão digital como um revogador designado às novas chaves criadas. Se a impressão digital for prefixada com a palavra-chave sensitive:'', essa informação normalmente não é exportada com a chave. Esta opção pode ser fornecida várias vezes para adicionar mais de uma chave de revogação designada. Se a palavra-chaveclear'' for usada em vez de uma impressão digital, todas as impressões digitais fornecidas anteriormente são descartadas. Os revogadores designados são marcados na chave como não revogáveis. Observe que um revogador designado especificado usando um arquivo de parâmetros também será adicionado à chave.
--default-new-key-adsk fingerprint
Adiciona a subchave especificada por fingerprint como uma Subchave de Descriptografia Adicional (ADSK) a novas chaves criadas. Esta opção pode ser fornecida várias vezes para adicionar mais de uma ADSK. Também é possível fornecer várias fingerprints delimitadas por espaço ou vírgula como valor para esta opção. Se a palavra-chave ``clear`` for usada em vez de uma fingerprint, todas as fingerprints especificadas anteriormente serão descartadas (útil para substituir opções fornecidas em um arquivo de configuração). A fingerprint deve especificar uma subchave e não precisa de um ponto de exclamação como sufixo; ela deve ser fornecida em formato compacto (40 ou 64 dígitos hexadecimais sem espaços).
--trust-model {pgp|classic|tofu|tofu+pgp|direct|always|auto}
Define qual modelo de confiança o GnuPG deve seguir. Os modelos são:
pgp
Este é a Teia de Confiança combinada com assinaturas de confiança, conforme usado no PGP 5.x e versões posteriores. Este é o modelo de confiança padrão ao criar um novo banco de dados de confiança.
classic
Esta é a Teia de Confiança padrão introduzida pelo PGP 2.
tofu
TOFU significa Trust On First Use (Confie no Primeiro Uso). Neste modelo de confiança experimental, a primeira vez que uma chave é vista, ela é memorizada. Se mais tarde outra chave com um ID de usuário com o mesmo endereço de e-mail for vista, ambas as chaves são marcadas como suspeitas. Nesse caso, na próxima vez que qualquer uma delas for usada, um aviso será exibido descrevendo o conflito, por que ele pode ter ocorrido (seja porque o usuário gerou uma nova chave e não assinou as chaves antiga e nova, a chave é uma falsificação ou um ataque de intermediário está sendo tentado) e o usuário é solicitado a confirmar manualmente a validade da chave em questão.
Como um potencial atacante pode controlar o endereço de e-mail e, assim, contornar o algoritmo de detecção de conflitos usando um endereço de e-mail que seja semelhante em aparência a um endereço de e-mail confiável, sempre que uma mensagem é verificada, estatísticas sobre o número de mensagens assinadas com a chave são exibidas. Dessa forma, um usuário pode facilmente identificar ataques usando chaves falsas para correspondentes regulares.
Quando comparado com a Teia de Confiança, o TOFU oferece garantias de segurança significativamente mais fracas. Em particular, o TOFU ajuda apenas a garantir a consistência (ou seja, que o vínculo entre uma chave e um endereço de e-mail não mude). Uma grande vantagem do TOFU é que requer pouca manutenção para ser usado corretamente. Para usar a Teia de Confiança adequadamente, você precisa assinar ativamente chaves e marcar usuários como introdutores confiáveis. Este é um processo demorado e evidências anedóticas sugerem que até mesmo usuários com consciência de segurança raramente reservam tempo para fazer isso completamente e, em vez disso, dependem de um processo TOFU ad hoc.
No modelo TOFU, as políticas estão associadas a vinculações entre chaves e endereços de e-mail (que são extraídos dos IDs de usuário e normalizados). Existem cinco políticas, que podem ser definidas manualmente usando a opção --tofu-policy. A política padrão pode ser definida usando a opção --tofu-default-policy.
As políticas TOFU são: auto, good, unknown, bad e ask. A política auto é usada por padrão (a menos que seja substituída por --tofu-default-policy) e marca uma vinculação como sendo marginalmente confiável. As políticas good, unknown e bad marcam uma vinculação como sendo totalmente confiável, tendo confiança desconhecida ou não tendo confiança, respectivamente. A política unknown é útil para usar o TOFU apenas para detectar conflitos, mas para nunca atribuir confiança positiva a uma vinculação. A política final, ask, solicita que o usuário indique o nível de confiança da vinculação. Se o modo em lote estiver habilitado (ou a entrada for inadequada no contexto), o usuário não será solicitado e o nível de confiança indefinido será retornado.
tofu+pgp
Este modelo de confiança experimental combina o TOFU com a Web of Trust. Isso é feito calculando o nível de confiança para cada modelo e, em seguida, tomando o nível de confiança máximo, onde os níveis de confiança são ordenados da seguinte forma: unknown < undefined < marginal < fully < ultimate < expired < never.
Ao definir --tofu-default-policy=unknown, este modelo pode ser usado para implementar a web de confiança com o algoritmo de detecção de conflitos do TOFU, mas sem a atribuição de valores de confiança positivos, o que alguns usuários preocupados com a segurança não gostam.
direct A validade da chave é definida diretamente pelo usuário e não é calculada por meio da Web de Confiança. Este modelo é baseado apenas na chave e não diferencia os IDs de usuário. Observe que, ao mudar para outro modelo de confiança, os valores de confiança atribuídos a uma chave são transformados em valores de ownertrust, que também indicam o quanto você confia no proprietário da chave para assinar outras chaves.
always Ignora a validação da chave e assume que as chaves usadas são sempre totalmente válidas. Você geralmente não usará isso, a menos que esteja usando algum esquema de validação externo. Esta opção também suprime a tag "[incerto]" impressa com as verificações de assinatura quando não há evidências de que o ID do usuário esteja vinculado à chave. Observe que este modelo de confiança ainda não permite o uso de chaves expiradas, revogadas ou desabilitadas.
auto Seleciona o modelo de confiança dependendo do que o banco de dados de confiança interno diz. Este é o modelo padrão se um banco de dados de confiança já existir. Observe que um modelo de confiança TOFU não é considerado aqui e deve ser habilitado explicitamente.
--always-trust
Idêntico a --trust-model always.
--assert-signer fpr_or_file
Esta opção verifica se pelo menos uma assinatura válida em um arquivo foi feita com a chave especificada. A chave é especificada como uma impressão digital ou um arquivo listando as impressões digitais. A impressão digital deve ser fornecida ou listada em formato compacto (sem dois pontos ou espaços entre elas). Esta opção pode ser fornecida várias vezes e cada impressão digital é verificada em relação à chave de assinatura, bem como à chave primária correspondente. Se fpr_or_file especificar um arquivo, as linhas vazias serão ignoradas, bem como todas as linhas que começam com um caractere de hash. Com esta opção, o gpg é garantido para retornar com um código de saída de 0 se e somente se uma assinatura tiver sido encontrada, for válida e a chave corresponder a uma das impressões digitais fornecidas por esta opção.
--assert-pubkey-algo algolist
Durante a verificação da assinatura de dados, esta opção verifica se o algoritmo da chave pública usada corresponde aos algoritmos fornecidos em algolist. Esta opção pode ser fornecida várias vezes
para concatenar mais algoritmos à lista; os delimitadores da lista são vírgulas ou
espaços.
Os nomes dos algoritmos fornecidos na lista podem ser nomes literais como "ed25519" com um opcional sinal de igual no início, ou podem ser prefixados com ">", ">=", "<=", ou "<". Esse operador de prefixo é aplicado à parte numérica do nome do algoritmo; por exemplo, 2048 em "rsa2048" ou 384 em "brainpoolP384r1". Se os caracteres não dígitos no início do nome corresponderem, o operador de prefixo é usado para comparar a parte numérica, um sufixo final é ignorado neste caso. Por exemplo, uma lista de algoritmos ">rsa3000, >=brainpool384r1, =ed25519" permite assinaturas RSA com mais de 3000 bits, curvas Brainpool 384 e 512, e o algoritmo ed25519.
Com esta opção, o GnuPG (e também o gpgv) garante que retornará com um código de saída de 0 somente se todas as assinaturas válidas nos dados forem feitas usando um algoritmo correspondente da lista fornecida.
--auto-key-locate mechanisms
--no-auto-key-locate
O GnuPG pode localizar e recuperar automaticamente chaves conforme necessário usando esta opção. Isso acontece ao criptografar para um endereço de e-mail (no formato "_") e não houver chaves "_" no chaveiro local. Esta opção recebe qualquer número dos mecanismos listados abaixo, na ordem em que devem ser tentados. Em vez de listar os mecanismos como argumentos delimitados por vírgulas, a opção também pode ser fornecida várias vezes para adicionar mais mecanismos. A opção --no-auto-key-locate ou o mecanismo "clear" redefine a lista. O padrão é "local,wkd".
cert Localiza uma chave usando DNS CERT, conforme especificado em RFC-4398.
dane Localiza uma chave usando DANE, conforme especificado em draft-ietf-dane-openpgpkey-05.txt.
wkd Localiza uma chave usando o protocolo Web Key Directory.
ldap Localiza a chave usando os servidores LDAP configurados. Este método é semelhante ao
mecanismo de servidor de chaves, mas sempre usa apenas servidores LDAP.
ntds Localiza a chave usando o Active Directory (somente Windows). Este método também permite
que se pesquise por impressão digital usando o comando --locate-external-key. Observe que
este mecanismo é, na verdade, um atalho para o mecanismo 'ldap' usando apenas
"ldap://" como o servidor de chaves.
keyserver
Localize uma chave usando um servidor de chaves. Este método também permite pesquisar por impressão digital usando o comando --locate-external-key se algum dos servidores de chaves configurados for um servidor LDAP.
keyserver-URL
Além disso, uma URL de servidor de chaves, conforme usada na configuração do dirmngr, pode ser usada aqui para consultar esse servidor de chaves específico. Este método também permite pesquisar por impressão digital usando o comando --locate-external-key se a URL especificar um servidor LDAP.
local
Localize a chave usando os chaveiros locais. Este mecanismo permite que o usuário selecione a ordem em que uma pesquisa de chave local é feita. Assim, usar ‘--auto-key-locate local’ é idêntico a --no-auto-key-locate.
nodefault
Esta flag desabilita a pesquisa de chave local padrão, feita antes que qualquer um dos mecanismos definidos por --auto-key-locate seja tentado. A posição deste mecanismo na lista não importa. Não é necessário se local também for usado.
clear
Limpa todos os mecanismos definidos. Isso é útil para substituir mecanismos fornecidos em um arquivo de configuração. Observe que um nodefault em mecanismos também será limpo, a menos que seja fornecido após o clear.
--auto-key-import
--no-auto-key-import
Este é um mecanismo offline para obter uma chave ausente para verificação de assinatura e para criptografia posterior para esta chave. Se esta opção estiver habilitada e uma assinatura incluir uma chave incorporada, essa chave será usada para verificar a assinatura e, após a verificação bem-sucedida, a chave será importada. O padrão é --no-auto-key-import.
No lado do remetente (assinatura), a opção --include-key-block precisa ser usada para colocar a parte pública da chave de assinatura como um "bloco de chave de subpacote" na assinatura.
--auto-key-retrieve
--no-auto-key-retrieve
Essas opções habilitam ou desabilitam a recuperação automática de chaves de um servidor de chaves ao verificar assinaturas feitas por chaves que não estão no chaveiro local. O padrão é --no-auto-key-retrieve.
A ordem dos métodos usados para procurar a chave é:
Se a opção --auto-key-import estiver definida e a assinatura incluir uma chave incorporada,
essa chave é usada para verificar a assinatura e, após a verificação bem-sucedida, essa chave é importada.
Se um servidor de chaves preferencial for especificado na assinatura e a opção honor-keyserver-url estiver ativa (o que não é o padrão), esse servidor de chaves é tentado. Observe que o criador da assinatura usa a opção --sig-keyserver-url para especificar o servidor de chaves preferencial para assinaturas de dados.
Se a assinatura tiver o UID do Signatário definido (por exemplo, usando --sender ao criar a assinatura), uma pesquisa no Web Key Directory (WKD) é feita. Esta é a configuração padrão, mas pode ser desativada removendo o WKD da lista auto-key-locate ou usando a opção --disable-signer-uid.
Se algum servidor de chaves estiver configurado e a Impressão Digital do Emissor fizer parte da assinatura
(a partir do GnuPG 2.1.16), os servidores de chaves configurados são tentados.
Observe que esta opção torna possível um comportamento semelhante a um "bug da web". Os operadores de servidor de chaves ou diretório de chaves da web podem ver quais chaves você solicita, portanto, ao enviar uma mensagem assinada por uma chave nova (que você naturalmente não terá em seu chaveiro local), o operador pode identificar seu endereço IP e a hora em que você verificou a assinatura.
--keyid-format {none|short|0xshort|long|0xlong}
Selecione como exibir os IDs de chave. "none" não exibe o ID da chave, mas exibe a impressão digital em uma linha separada. "short" é o ID de chave tradicional de 8 caracteres. "long" é o ID de chave mais preciso (mas menos conveniente) de 16 caracteres. Adicione um "0x" a qualquer um deles para incluir um "0x" no início do ID da chave, como em 0x99242560. Observe que esta opção é ignorada se a opção --with-colons for usada.
--keyserver name
Esta opção está obsoleta - use --keyserver em 'dirmngr.conf' em vez disso.
Use 'name' como seu servidor de chaves. Este é o servidor com o qual --receive-keys, --send-keys e --search-keys se comunicarão para receber chaves, enviar chaves e pesquisar chaves. O formato do nome é um URI: `scheme:[//]keyservername[:port]`. O esquema é o tipo de servidor de chaves: "hkp"/"hkps" para servidores de chaves HTTP (ou compatíveis) ou "ldap"/"ldaps" para servidores de chaves LDAP. Observe que sua instalação específica do GnuPG pode ter outros tipos de servidores de chaves disponíveis também. Os esquemas de servidor de chaves não diferenciam maiúsculas de minúsculas.
A maioria dos servidores de chaves sincroniza entre si, portanto, geralmente não há necessidade de enviar chaves para mais de um servidor. O servidor de chaves hkp://keys.gnupg.net usa DNS round robin para fornecer um servidor de chaves diferente cada vez que você o usa.
--keyserver-options {name=value}
Esta é uma string delimitada por espaços ou vírgulas que fornece opções para o servidor de chaves. As opções podem ser prefixadas com `no-` para dar o significado oposto. Opções de importação ou exportação válidas podem ser usadas aqui para aplicar à importação (--recv-key) ou exportação (--send-key) de uma chave de um servidor de chaves. Embora nem todas as opções estejam disponíveis para todos os tipos de servidores de chaves, algumas opções comuns são:
include-revoked
Ao pesquisar uma chave com --search-keys, inclua chaves que são marcadas no servidor de chaves como revogadas. Observe que nem todos os servidores de chaves diferenciam chaves revogadas e não revogadas, e para tais servidores de chaves, esta opção não tem significado. Observe também que a maioria dos servidores de chaves não tem verificação criptográfica de revogações de chaves, portanto, desativar esta opção pode resultar em ignorar chaves que estão incorretamente marcadas como revogadas.
include-disabled
Ao pesquisar uma chave com --search-keys, inclua chaves que são marcadas no servidor de chaves como desativadas. Observe que esta opção não é usada com servidores de chaves HKP.
auto-key-retrieve
Esta é um alias obsoleto para a opção auto-key-retrieve. Por favor, não o use; ele será removido em versões futuras.
honor-keyserver-url
Ao usar --refresh-keys, se a chave em questão tiver uma URL de servidor de chaves preferencial, use esse servidor de chaves preferencial para atualizar a chave. Além disso, se auto-key-retrieve estiver definido e a assinatura que está sendo verificada tiver uma URL de servidor de chaves preferencial, use esse servidor de chaves preferencial para obter a chave. Observe que esta opção introduz um "bug na web": o criador da chave pode ver quando a chave é atualizada. Portanto, esta opção não está habilitada por padrão.
include-subkeys
Ao receber uma chave, inclua as subchaves como alvos potenciais. Observe que esta opção não é usada com servidores de chaves HKP, pois eles não oferecem suporte para recuperar chaves por ID de subchave.
only-pubkeys
Não permita importar chaves secretas.
timeout
http-proxy=valor
verbose
debug
check-cert
ca-cert-file
Essas opções não têm mais função desde o GnuPG 2.1. Use as opções de configuração do dirmngr em vez disso.
A lista padrão de opções é: "self-sigs-only, repair-keys, repair-pks-subkey-bug, export-attributes". No entanto, se a fonte usada for um servidor LDAP, assume-se "no-self-sigs-only", a menos que "self-sigs-only" tenha sido configurado explicitamente.
--completes-needed n
Número de usuários totalmente confiáveis para introduzir um novo assinante de chave (o padrão é 1).
--marginals-needed n
Número de usuários marginalmente confiáveis para introduzir um novo assinante de chave (o padrão é 3)
--tofu-default-policy {auto|good|unknown|bad|ask}
A política TOFU padrão (o padrão é auto). Para obter mais informações sobre o significado desta opção, consulte: [trust-model-tofu].
--max-cert-depth n
Profundidade máxima de uma cadeia de certificação (o padrão é 5).
--no-sig-cache
Não armazene em cache o status de verificação das assinaturas de chaves em cache. O armazenamento em cache oferece um desempenho muito melhor nas listas de chaves. No entanto, se você suspeitar que seu chaveiro público não está seguro contra modificações, você pode usar esta opção para desativar o armazenamento em cache. Provavelmente, não faz sentido desativá-lo, pois todo tipo de dano pode ser feito se outra pessoa tiver acesso de gravação ao seu chaveiro público.
--auto-check-trustdb
--no-auto-check-trustdb
Se o GnuPG sentir que suas informações sobre a Web of Trust precisam ser atualizadas, ele executará automaticamente o comando --check-trustdb internamente. Este pode ser um processo demorado. --no-auto-check-trustdb desativa esta opção.
--use-agent
--no-use-agent
Esta é uma opção fictícia. O gpg sempre requer o agente.
--gpg-agent-info
Esta é uma opção fictícia. Não tem efeito quando usado com o gpg.
--agent-program arquivo
Especifique um programa de agente a ser usado para operações de chave secreta. O valor padrão é determinado executando o gpgconf com a opção --list-dirs. Observe que o símbolo de barra vertical (|) é usado para um hack de suíte de teste de regressão e, portanto, pode não ser usado no nome do arquivo.
--dirmngr-program arquivo
Especifique um programa dirmngr a ser usado para acesso ao servidor de chaves. O valor padrão é '/usr/bin/dirmngr'.
--disable-dirmngr
Desative completamente o uso do Dirmngr.
--no-autostart
Não inicie o gpg-agent ou o dirmngr se ainda não tiver sido iniciado e seu serviço for necessário. Esta opção é mais útil em máquinas onde a conexão com o gpg-agent foi redirecionada para outra máquina. Se o dirmngr for necessário na máquina remota, ele pode ser iniciado manualmente usando gpgconf --launch dirmngr.
--lock-once
Bloqueia os bancos de dados na primeira vez que uma trava é solicitada e não libera a trava até que o processo seja encerrado.
--lock-multiple
Libera as travas sempre que uma trava não for mais necessária. Use esta opção para substituir uma opção --lock-once de um arquivo de configuração.
--lock-never
Desabilita o bloqueio completamente. Esta opção deve ser usada apenas em ambientes muito específicos, onde pode ser garantido que apenas um processo está acessando esses arquivos. Um disquete inicializável com um sistema de criptografia autônomo provavelmente usará isso. O uso incorreto desta opção pode levar à corrupção de dados e chaves.
--exit-on-status-write-error
Esta opção fará com que erros de gravação no descritor de arquivo de status causem o encerramento imediato do processo. Na verdade, este deveria ser o comportamento padrão, mas nunca funcionou assim, e, portanto, precisamos de uma opção para habilitar isso, para que a mudança não interrompa aplicativos que fecham sua extremidade de um pipe de descritor de arquivo de status conectado muito cedo. Usar esta opção junto com --enable-progress-filter pode ser usado para cancelar de forma limpa operações GPG de longa duração.
--limit-card-insert-tries n
Com n maior que 0, o número de prompts que solicitam a inserção de um cartão inteligente é limitado a N-1. Assim, com um valor de 1, o GPG não solicitará a inserção de um cartão se nenhum tiver sido inserido no início. Esta opção é útil no arquivo de configuração no caso de um aplicativo não ter conhecimento do suporte a cartão inteligente e esperar indefinidamente por um cartão inserido.
--no-random-seed-file
O GnuPG usa um arquivo para armazenar seu pool interno de números aleatórios entre invocações. Isso torna a geração de números aleatórios mais rápida; no entanto, às vezes as operações de gravação não são desejadas. Esta opção pode ser usada para alcançar isso, com o custo de uma geração de números aleatórios mais lenta.
--no-greeting
Suprime a mensagem de direitos autorais inicial.
--no-secmem-warning
Suprime o aviso sobre o uso de "memória insegura".
--no-permission-warning
Suprime o aviso sobre permissões de arquivo e diretório pessoal (--homedir) inseguras. Observe que as verificações de permissão que o GnuPG executa não são destinadas a serem definitivas, mas apenas alertam sobre certos problemas de permissão comuns. Não presuma que a ausência de um aviso significa que seu sistema é seguro.
Observe que o aviso para permissões --homedir inseguras não pode ser suprimido no arquivo gpg.conf, pois isso permitiria que um invasor colocasse um arquivo gpg.conf inseguro e usasse este arquivo para suprimir avisos sobre ele. O aviso de permissões --homedir só pode ser suprimido na linha de comando.
--require-secmem
--no-require-secmem
Recusa-se a executar se o GnuPG não conseguir obter memória segura. O padrão é não (ou seja, executar, mas exibir um aviso).
--require-cross-certification
--no-require-cross-certification
Ao verificar uma assinatura feita de uma subchave, certifique-se de que a "assinatura de retrocesso" de certificação cruzada na subchave esteja presente e válida. Isso protege contra um ataque sutil a subchaves que podem assinar. O padrão é --require-cross-certification para gpg.
--expert
--no-expert
Permite que o usuário execute certas ações sem sentido ou "bobas", como assinar uma chave expirada ou revogada, ou certas ações potencialmente incompatíveis, como gerar tipos de chave incomuns. Isso também desativa certas mensagens de aviso sobre ações potencialmente incompatíveis. Como o nome indica, esta opção é apenas para especialistas. Se você não entender totalmente as implicações do que isso permite que você faça, deixe-o desativado. --no-expert desativa esta opção.
Opções relacionadas à chave
--recipient name
-r Criptografa para o ID do usuário name. Se esta opção ou --hidden-recipient não for especificada, GnuPG
solicita o ID do usuário, a menos que --default-recipient seja fornecido.
--hidden-recipient name
-R Criptografa para o ID do usuário name, mas oculta o ID da chave do usuário. Esta opção ajuda a
ocultar o destinatário da mensagem e é uma contra-medida limitada contra a análise de tráfego.
Se esta opção ou --recipient não for especificada, GnuPG solicita o ID do usuário, a menos que --default-recipient seja fornecido.
--recipient-file file
-f Esta opção é semelhante a --recipient, exceto que criptografa para uma chave armazenada no arquivo fornecido.
file deve ser o nome de um arquivo que contenha exatamente uma chave. gpg assume que a
chave neste arquivo é totalmente válida.
--hidden-recipient-file file
-F Esta opção é semelhante a --hidden-recipient, exceto que criptografa para uma chave armazenada no arquivo fornecido. file deve ser o nome de um arquivo que contenha exatamente uma chave. gpg assume
que a chave neste arquivo é totalmente válida.
--encrypt-to name
Semelhante a --recipient, mas esta opção é destinada ao uso no arquivo de opções e pode ser usada com seu próprio ID de usuário como um "encrypt-to-self". É sugerido usar uma impressão digital ou pelo menos um ID de chave longo para name. Essas chaves são usadas apenas quando há outros destinatários fornecidos, seja por meio do uso de --recipient ou por meio do ID do usuário solicitado. Nenhuma verificação de confiança é realizada para esses IDs de usuário e até mesmo chaves desativadas podem ser usadas.
--hidden-encrypt-to name
Semelhante a --hidden-recipient, mas esta opção é destinada ao uso no arquivo de opções e pode ser usada com seu próprio ID de usuário como um "hidden-encrypt-to". É sugerido usar uma impressão digital ou pelo menos um ID de chave longo para name. Essas chaves são usadas apenas quando há outros destinatários fornecidos, seja por meio do uso de --recipient ou por meio do ID do usuário solicitado. Nenhuma verificação de confiança é realizada para esses IDs de usuário e até mesmo chaves desativadas podem ser usadas.
--no-encrypt-to
Desativa o uso de todas as chaves --encrypt-to e --hidden-encrypt-to.
--group {name=value}
Configura um grupo nomeado, que é semelhante a aliases em programas de e-mail. Sempre que o nome do grupo for um destinatário (-r ou --recipient), ele será expandido para os valores especificados. Vários grupos com o mesmo nome são automaticamente mesclados em um único grupo.
Os valores são IDs de chave ou impressões digitais, mas qualquer descrição de chave é aceita. Observe que um valor com espaços será tratado como dois valores diferentes. Observe também que existe apenas um nível de expansão – você não pode criar um grupo que aponte para outro grupo. Ao ser usado na linha de comando, pode ser necessário colocar o argumento entre aspas para evitar que o shell o trate como vários argumentos.
--ungroup name
Remove uma entrada especificada da lista de --group.
--no-groups
Remove todas as entradas da lista de --group.
--local-user name
-u Usar name como a chave para assinar. Observe que esta opção substitui --default-key.
--sender mbox
Esta opção tem dois propósitos. mbox deve ser um ID de usuário completo contendo um endereço de e-mail válido ou apenas um endereço de e-mail simples. A opção pode ser fornecida várias vezes.
Ao criar uma assinatura, esta opção informa ao gpg o ID de usuário da chave de assinatura usado para criar a assinatura e incorpora esse ID de usuário na assinatura criada (usando o subpacote "ID de Usuário do Assinante" do OpenPGP). Se a opção for fornecida várias vezes, um ID de usuário adequado será selecionado. No entanto, se a chave de assinatura foi especificada diretamente usando um endereço de e-mail (ou seja, não usando uma impressão digital ou ID de chave), esta opção é usada e o endereço de e-mail é incorporado na assinatura criada.
Ao verificar uma assinatura, mbox é usado para restringir as informações impressas pelo código TOFU para corresponder aos IDs de usuário. Se a opção for usada e a assinatura contiver um subpacote "ID de Usuário do Assinante", essa informação também é usada para restringir as informações impressas. Observe que o GnuPG considera apenas a parte do endereço de e-mail de um ID de usuário.
Se esta opção ou o subpacote mencionado estiverem disponíveis, as linhas TRUST, conforme impressas pela opção status-fd, corresponderão ao ID de usuário correspondente; se nenhum ID de usuário for conhecido, as linhas TRUST são calculadas diretamente na chave e não fornecem nenhuma informação sobre o ID de usuário. Neste último caso, é altamente recomendável que scripts e outros front-ends avaliem a linha VALIDSIG, recuperem a chave e imprimam todos os IDs de usuário juntamente com suas informações de validade (confiança).
--try-secret-key name
Para destinatários ocultos, o GPG precisa saber as chaves a serem usadas para a descriptografia de teste. O conjunto de chaves definido com --default-key é sempre tentado primeiro, mas isso geralmente não é suficiente. Esta opção permite definir mais chaves a serem usadas para a descriptografia de teste. Embora qualquer especificação de ID de usuário válida possa ser usada para name, faz sentido usar pelo menos o ID de chave longo para evitar ambiguidades. Observe que o gpg-agent pode exibir um prompt pinentry para muitas chaves para realizar a descriptografia de teste. Se você quiser interromper toda a descriptografia de teste subsequente, você pode usar o botão fechar-janela em vez do botão cancelar.
--try-all-secrets
Não verifique o ID de chave armazenado na mensagem, mas tente todas as chaves secretas em sequência para encontrar a chave de descriptografia correta. Esta opção força o comportamento usado por destinatários anônimos (criados usando --throw-keyids ou --hidden-recipient) e pode ser útil em casos em que uma mensagem criptografada contém um ID de chave falso.
--skip-hidden-recipients
--no-skip-hidden-recipients
Durante a descriptografia, ignore todos os destinatários anônimos. Esta opção é útil no caso em que as pessoas usam o recurso de destinatários ocultos para ocultar sua própria chave de criptografia de outros. Se alguém tiver muitas chaves secretas, isso pode causar um grande incômodo, pois todas as chaves são testadas, uma a uma, para descriptografar algo que não foi realmente destinado a ela. A desvantagem desta opção é que, atualmente, não é possível descriptografar uma mensagem que inclua destinatários anônimos reais.
Entrada e Saída
--armor
-a Cria saída em formato ASCII blindado. O padrão é criar o formato binário OpenPGP.
--no-armor
Assume que os dados de entrada não estão no formato ASCII blindado.
--output file
-o file
Escreve a saída para o arquivo. Para escrever para stdout, use - como nome do arquivo.
--max-output n
Esta opção define um limite para o número de bytes que serão gerados ao processar um arquivo. Como o OpenPGP suporta vários níveis de compressão, é possível que o texto simples de uma determinada mensagem seja significativamente maior do que a mensagem OpenPGP original. Embora o GnuPG funcione corretamente com essas mensagens, muitas vezes há um desejo de definir um tamanho máximo de arquivo que será gerado antes que o processamento seja forçado a parar pelos limites do sistema operacional. O padrão é 0, o que significa "sem limite".
--chunk-size n
O modo de criptografia AEAD criptografa os dados em blocos, para que o lado receptor possa verificar erros de transmissão ou adulteração no final de cada bloco e não precise atrasar isso até que todos os dados sejam recebidos. O tamanho do bloco usado é 2^n bytes. O valor mínimo permitido para n é 6 (64 bytes) e o máximo é o padrão de 22, o que cria blocos não maiores que 4 MiB.
--input-size-hint n
Esta opção pode ser usada para informar ao GPG o tamanho dos dados de entrada em bytes. n deve ser um número positivo na base 10. Esta opção é útil apenas se a entrada não for proveniente de um arquivo. O GPG pode usar essa dica para otimizar sua estratégia de alocação de buffer. Também é usado pela linha --status-fd "PROGRESSO" para fornecer um valor para "total" se isso não estiver disponível por outros meios.
--key-origin string[,url]
O gpg pode rastrear a origem de uma chave. Certas origens são implicitamente conhecidas (por exemplo, servidor de chaves, diretório de chaves da web) e são definidas. Para uma importação padrão, a origem das chaves importadas pode ser definida com esta opção. Para listar os valores possíveis, use "help" para string. Algumas origens podem armazenar um argumento de URL opcional. Essa URL pode ser anexada à string após uma vírgula.
--import-options parameters
Esta é uma string delimitada por espaços ou vírgulas que fornece opções para importar chaves. As opções podem ser precedidas por `no-' para dar o significado oposto. As opções são:
import-local-sigs
Permite importar assinaturas de chave marcadas como "local". Isso não é geralmente útil, a menos que um esquema de chaveiro compartilhado esteja sendo usado. O padrão é não.
keep-ownertrust
Normalmente, os valores de ownertrust existentes de uma chave ainda podem ser apagados se uma chave for importada. Isso é geralmente desejável, para que uma chave excluída anteriormente não ganhe automaticamente valores de ownertrust apenas devido à importação. Por outro lado, às vezes é necessário reimportar um conjunto de chaves confiáveis, mas mantendo os valores de ownertrust já atribuídos. Isso pode ser alcançado usando esta opção.
repair-pks-subkey-bug
Durante a importação, tente corrigir os danos causados pelo bug do servidor de chaves PKS (versão anterior à 0.9.6) que corrompe chaves com várias subchaves. Observe que isso não pode reparar completamente a chave danificada, pois alguns dados cruciais são removidos pelo servidor de chaves, mas pelo menos fornece uma subchave. O padrão é não para --import normal e sim para --receive-keys do servidor de chaves.
import-show
show-only
Mostre uma lista da chave conforme importada, imediatamente antes de ser armazenada. Isso pode ser combinado com a opção --dry-run para apenas visualizar as chaves; a opção show-only é um atalho para essa combinação. O comando --show-keys é outro atalho para isso. Observe que os sufixos como '#' para as linhas "sec" e "sbb" podem ou não ser impressos.
import-export
Execute todo o código de importação, mas em vez de armazenar a chave no chaveiro local, grave-a na saída. A opção de exportação export-dane afeta a saída. Esta opção pode ser usada, por exemplo, para remover todas as partes inválidas de uma chave sem a necessidade de armazená-la.
merge-only
Durante a importação, permita atualizações de chave para chaves existentes, mas não permita a importação de novas chaves. O padrão é não.
import-clean
Após a importação, compacte (remova todas as assinaturas, exceto a autoassinatura) quaisquer IDs de usuário da nova chave que não sejam utilizáveis. Em seguida, remova quaisquer assinaturas da nova chave que não sejam utilizáveis. Isso inclui assinaturas que foram emitidas por chaves que não estão presentes no chaveiro. Esta opção é a mesma que executar o comando --edit-key "clean" após a importação. O padrão é não.
self-sigs-only
Aceite apenas autoassinaturas ao importar uma chave. Todas as outras assinaturas de chave são ignoradas em um estágio inicial da importação. Esta opção pode ser usada com as opções do servidor de chaves para mitigar tentativas de inundar uma chave com assinaturas falsas de um servidor de chaves. A desvantagem é que todas as outras assinaturas de chave válidas, conforme exigido pela Web of Trust, também não são importadas. Observe que, ao usar esta opção juntamente com import-clean, ela suprime a etapa de limpeza final após a mesclagem da chave importada na chave existente.
ignore-attributes
Ignore todos os IDs de usuário de atributo (IDs de foto) e suas assinaturas ao importar uma chave.
repair-keys
Após a importação, corrija vários problemas com as chaves. Por exemplo, isso reordena as assinaturas e remove assinaturas duplicadas. O padrão é sim.
bulk-import
Quando usado, o keyboxd (opção use-keyboxd em ‘common.conf’) realiza a importação dentro de uma única transação.
import-minimal
Importa a menor chave possível. Isso remove todas as assinaturas, exceto a assinatura própria mais recente em cada ID de usuário. Esta opção é a mesma que executar o comando --edit-key "minimize" após a importação. O padrão é não.
restore
import-restore
Importa no modo de restauração de chave. Isso importa todos os dados que normalmente são ignorados durante a importação; incluindo todos os dados específicos do GnuPG. Todas as outras opções conflitantes são ignoradas.
--import-filter {name=expr}
--export-filter {name=expr}
Estas opções definem um filtro de importação/exportação que é aplicado ao bloco de chaves importado/exportado imediatamente antes de ser armazenado/gravado. name define o tipo de filtro a ser usado e expr a expressão a ser avaliada. A opção pode ser usada várias vezes, adicionando mais expressões ao mesmo nome.
Os tipos de filtro disponíveis são:
keep-uid
Este filtro manterá um pacote de ID de usuário e seus pacotes dependentes no bloco de chaves se a expressão for avaliada como verdadeira.
drop-subkey
Este filtro descarta as subchaves selecionadas. Atualmente, implementado apenas para --exportfilter.
drop-sig
Este filtro descarta as assinaturas de chave selecionadas em IDs de usuário. As assinaturas próprias não são consideradas. Atualmente, implementado apenas para --import-filter.
select Este filtro é implementado apenas por --list-filter. Todos os nomes de propriedades podem ser usados.
Para a sintaxe da expressão, consulte o capítulo "FILTER EXPRESSIONS". Os nomes das propriedades para as expressões dependem do tipo de filtro real e são indicados na tabela a seguir. Observe que todos os nomes das propriedades também podem ser usados por --list-filter.
Os nomes das propriedades podem ser prefixados com um escopo delimitado por uma barra. Os escopos válidos são "pub" para chaves primárias públicas e secretas, "sub" para chaves e subchaves públicas e secretas, "uid" para pacotes de ID de usuário e "sig" para pacotes de assinatura. Escopos inválidos são atualmente ignorados.
As propriedades disponíveis são:
uid Uma string com o ID de usuário. (keep-uid)
mbox A parte addr-spec de um ID de usuário com endereço de e-mail ou uma string vazia. (keep-uid)
algostr
Uma string com a descrição do algoritmo de chave. Por exemplo, "rsa3072" ou "ed25519".
key_algo
Um número com o algoritmo de chave pública de uma chave ou subchave. (drop-subkey)
key_size
Um número com o tamanho efetivo da chave de uma chave ou subchave. (drop-subkey)
key_created
key_created_d
O primeiro é o timestamp em que uma chave pública ou subchave foi criada. O segundo é o mesmo, mas fornecido como uma string ISO, por exemplo, "2016-08-17". (drop-subkey)
key_expires
key_expires_d
O tempo de expiração de uma chave ou subchave pública ou 0 se não expirar. O segundo é o mesmo, mas fornecido como uma string de data ISO ou uma string vazia, por exemplo, "2038-01-19".
fpr A impressão digital hexadecimal da subchave ou chave primária atual. (drop-subkey)
primary
Booleano que indica se o ID do usuário é o principal. (keep-uid)
expired
Booleano que indica se um ID de usuário (keep-uid), uma chave (drop-subkey) ou uma assinatura (drop-sig) expirou.
revoked
Booleano que indica se um ID de usuário (keep-uid) ou uma chave (drop-subkey) foi revogado.
disabled
Booleano que indica se uma chave primária está desativada.
secret
Booleano que indica se uma chave ou subchave é uma chave secreta. (drop-subkey)
usage
Uma string que indica os sinalizadores de uso para a subchave, da sequência ecsa?''.
Por exemplo, uma subchave capaz de apenas assinar e autenticar seria uma correspondência exata parasa''. (drop-subkey)
sig_created
sig_created_d
O primeiro é o timestamp em que um pacote de assinatura foi criado. O segundo é o mesmo, mas fornecido como uma string de data ISO, por exemplo, "2016-08-17". (drop-sig)
sig_expires
sig_expires_d
O tempo de expiração de um pacote de assinatura ou 0 se não expirar. O segundo é o mesmo, mas fornecido como uma string de data ISO ou uma string vazia, por exemplo, "2038-01-19".
sig_algo
Um número com o algoritmo de chave pública de um pacote de assinatura. (drop-sig)
sig_digest_algo
Um número com o algoritmo de hash de um pacote de assinatura. (drop-sig)
origin
Uma string com a origem da chave ou um ponto de interrogação. Por exemplo, a string ``wkd'' é usada se uma chave se originou de uma pesquisa no Web Key Directory.
lastupd
O timestamp em que a chave foi atualizada pela última vez de um servidor de chaves ou do Web Key Directory.
url
Uma string com a URL associada à última pesquisa de chave.
--export-options parâmetros
Esta é uma string delimitada por espaços ou vírgulas que fornece opções para exportar chaves. As opções podem ser prefixadas com `no-' para dar o significado oposto. As opções são:
export-local-sigs
Permitir a exportação de assinaturas de chave marcadas como "local". Isso não é geralmente útil, a menos que um esquema de keyring compartilhado esteja sendo usado. O padrão é não.
export-attributes
Incluir IDs de usuário de atributo (IDs de foto) durante a exportação. Não incluir IDs de usuário de atributo é útil para exportar chaves que serão usadas por um programa OpenPGP que não aceita IDs de usuário de atributo. O padrão é sim.
export-sensitive-revkeys
Incluir informações do revogador designado que foram marcadas como "confidenciais". O padrão é não.
backup
export-backup
Exportar para uso como um backup. Os dados exportados incluem todos os dados necessários para restaurar a chave ou chaves posteriormente com GnuPG. O formato é basicamente o formato OpenPGP, mas aprimorado com dados específicos do GnuPG. Todas as outras opções contraditórias são substituídas.
export-clean
Compactar (remover todas as assinaturas) dos IDs de usuário na chave que está sendo exportada se os IDs de usuário não forem utilizáveis. Além disso, não exporte nenhuma assinatura que não seja utilizável. Isso inclui assinaturas que foram emitidas por chaves que não estão presentes no keyring. Esta opção é a mesma que executar o comando --edit-key "clean" antes da exportação, exceto que a cópia local da chave não é modificada. O padrão é não.
export-minimal
Exporta a menor chave possível. Isso remove todas as assinaturas, exceto a assinatura de auto-assinatura mais recente em cada ID de usuário. Esta opção é a mesma que executar o comando `--edit-key "minimize"` antes da exportação, exceto que a cópia local da chave não é modificada. O padrão é não.
export-revocs
Exporta apenas os certificados de revogação autônomos da chave. Esta opção não exporta as revogações de revogações de certificados de terceiros.
export-dane
Em vez de gerar a saída do material da chave, gera registros OpenPGP DANE adequados para serem colocados em arquivos de zona DNS. Uma linha ORIGIN é impressa antes de cada registro para permitir o desvio dos registros para o arquivo de zona correspondente.
mode1003
Habilita o uso de um novo formato de exportação de chave secreta. Este formato evita a re-criptografia necessária com o formato OpenPGP atual e também melhora a segurança da chave secreta se ela tiver sido protegida com uma senha. Observe que uma chave não protegida é exportada como está e, portanto, não é segura; a regra geral de transmitir chaves secretas em um arquivo OpenPGP criptografado ainda se aplica com este modo. As versões do GnuPG anteriores à 2.4.0 não são capazes de importar um arquivo secreto neste formato.
--with-colons
Imprime listas de chaves delimitadas por dois pontos. Observe que a saída será codificada em UTF-8, independentemente de qualquer configuração de `--display-charset`. Este formato é útil quando o GnuPG é chamado a partir de scripts e outros programas, pois é facilmente analisado por máquina. Os detalhes deste formato estão documentados no arquivo `doc/DETAILS`, que está incluído na distribuição da fonte do GnuPG.
--fixed-list-mode
Não mescla o ID de usuário primário e a chave primária no modo de listagem `--with-colons` e imprime todas as marcas de tempo como segundos desde 1970-01-01. Desde o GnuPG 2.0.10, este modo é sempre usado e, portanto, esta opção é obsoleta; não causa problemas usá-la.
--legacy-list-mode
Reverte para o modo de lista de chaves públicas pré-2.1. Isso afeta apenas a saída legível por humanos e não a interface de máquina (ou seja, `--with-colons`). Observe que o formato legado não transmite informações adequadas para curvas elípticas.
--with-fingerprint
Igual ao comando `--fingerprint`, mas altera apenas o formato da saída e pode ser usado em conjunto com outro comando.
--with-subkey-fingerprint
Se uma impressão digital for impressa para a chave primária, esta opção força a impressão da impressão digital para todas as subchaves. Isso também poderia ser alcançado usando o `--with-fingerprint` duas vezes, mas usando esta opção junto com o `keyid-format "none"`, uma impressão digital compacta é impressa.
--with-v5-fingerprint
Em um modo de listagem de dois pontos, emite linhas "fp2" para chaves OpenPGP versão 4 que possuem uma impressão digital de estilo v5 da chave.
--with-icao-spelling
Imprime a grafia ICAO da impressão digital, além dos dígitos hexadecimais.
--with-keygrip
Inclui o keygrip nas listas de chaves. No modo `--with-colons`, isso é habilitado implicitamente para chaves secretas.
--with-key-origin
Inclui as informações locais sobre a origem e a última atualização de uma chave em uma listagem de chaves. Em modo --with-colons, isso é sempre exibido. Esses dados são atualmente experimentais e não devem ser considerados parte da API estável.
--with-wkd-hash
Imprime um identificador de Diretório de Chaves da Web junto com cada ID de usuário nas listagens de chaves. Este é um recurso experimental e a semântica pode mudar.
--with-secret
Inclui informações sobre a presença de uma chave secreta nas listagens de chaves públicas feitas com --with-colons.
Opções específicas do protocolo OpenPGP
--force-ocb
--force-aead
Força o uso de criptografia AEAD em vez de criptografia MDC. AEAD é uma maneira moderna e mais rápida de realizar criptografia autenticada do que o antigo método MDC. --force-aead é um alias e está obsoleto. Veja também a opção --chunk-size.
--force-mdc
--disable-mdc
Essas opções estão obsoletas e não têm efeito desde o GnuPG 2.2.8. O MDC é sempre usado, a menos que as chaves indiquem que um algoritmo AEAD pode ser usado, caso em que o AEAD é usado. Mas observe: se a criação de uma mensagem MDC legada for excepcionalmente necessária, a opção --rfc2440 permite isso.
--disable-signer-uid
Por padrão, o ID de usuário da chave de assinatura é incorporado nos dados da assinatura. Atualmente, isso é feito apenas se a chave de assinatura foi especificada com local-user usando um endereço de e-mail ou com sender. Esta informação pode ser útil para que o verificador localize a chave; veja a opção --auto-key-retrieve.
--include-key-block
--no-include-key-block
Esta opção é usada para incorporar a chave de assinatura real em uma assinatura de dados. A chave incorporada é reduzida a um único ID de usuário e inclui apenas a subchave de assinatura usada para criar a assinatura, bem como subchaves de criptografia válidas. Todas as outras informações são removidas da chave para mantê-la e, portanto, a assinatura pequena. Esta opção é o equivalente OpenPGP da opção gpgsm --include-certs e permite que o destinatário de uma mensagem assinada responda criptografada ao remetente sem usar nenhum diretório online para procurar a chave. O padrão é --no-include-key-block. Veja também a opção --auto-key-import.
--personal-cipher-preferences string
Define a lista de preferências de cifra pessoal para string. Use gpg --version para obter uma lista de algoritmos disponíveis e use none para não definir nenhuma preferência. Isso permite que o usuário substitua com segurança o algoritmo escolhido pelas preferências do destinatário, pois o GPG só selecionará um algoritmo que seja utilizável por todos os destinatários. A cifra de maior classificação nesta lista também é usada para o comando de criptografia simétrica.
--personal-digest-preferences string
Define a lista de preferências de hash pessoal para string. Use gpg --version para obter uma lista de algoritmos disponíveis e use none para não definir nenhuma preferência. Isso permite que o usuário substitua com segurança o algoritmo escolhido pelas preferências do destinatário, pois o GPG só selecionará um algoritmo que seja utilizável por todos os destinatários. O algoritmo de hash de maior classificação nesta lista também é usado ao assinar sem criptografia (por exemplo, --clear-sign ou --sign).
--personal-compress-preferences string
Define a lista de preferências de compressão pessoal como string. Use gpg --version para obter uma lista de algoritmos disponíveis e use none para definir nenhuma preferência. Isso permite que o usuário substitua com segurança o algoritmo escolhido pelas preferências da chave do destinatário, pois o GPG selecionará apenas um algoritmo que seja utilizável por todos os destinatários. O algoritmo de compressão de maior classificação nesta lista também é usado quando não há chaves de destinatário para considerar (por exemplo, --symmetric).
--s2k-cipher-algo name
Use name como o algoritmo de cifra para criptografia simétrica com uma senha, caso --personal-cipher-preferences e --cipher-algo não sejam fornecidos. O padrão é AES-128.
--s2k-digest-algo name
Use name como o algoritmo de hash usado para manipular as senhas para criptografia simétrica. O padrão é SHA-1.
--s2k-mode n
Seleciona como as senhas para criptografia simétrica são manipuladas. Se n for 0, uma senha simples (o que geralmente não é recomendado) será usada; se for 1, um sal (que não deve ser usado) será adicionado à senha; e se for 3 (o padrão), todo o processo será iterado várias vezes (veja --s2k-count).
--s2k-count n
Especifique quantas vezes a manipulação de senhas para criptografia simétrica é repetida. Este valor pode variar entre 1024 e 65011712, inclusive. O padrão é obtido do gpg-agent. Observe que nem todos os valores no intervalo de 1024 a 65011712 são válidos, e se um valor inválido for selecionado, o GnuPG arredondará para o valor legal mais próximo. Esta opção só é significativa se --s2k-mode estiver definido como o padrão de 3.
Opções de conformidade
Essas opções controlam a conformidade do GnuPG. Apenas uma dessas opções pode estar ativa por vez. Se várias opções forem fornecidas, a última substituirá todas as outras. Observe que a configuração padrão disso quase sempre é a correta. Consulte a seção INTEROPERABILIDADE COM OUTROS PROGRAMAS OPENPGP abaixo antes de usar uma dessas opções.
--gnupg
Use o comportamento padrão do GnuPG. Este agora é o comportamento do LibrePGP, que é um rascunho de protocolo diferente que se sobrepõe em alguns casos ao OpenPGP.
--openpgp
Defina todas as opções de pacotes, cifra e hash para o comportamento compatível com o OpenPGP (RFC-9580). Observe que nem todo o RFC-9580 é implementado pelo GnuPG. Esta é a opção padrão, portanto, geralmente não é necessária, mas pode ser útil para substituir uma opção de conformidade diferente no arquivo gpg.conf.
--rfc4880
Defina todas as opções de pacotes, cifra e hash para o comportamento estrito do RFC-4880. O RFC-4880 é a versão legada do padrão OpenPGP. Esta opção implica --allow-old-cipher-algos.
--rfc4880bis
Esta opção está obsoleta; é tratada como um alias para --gnupg.
--rfc2440
Defina todas as opções de pacotes, cifra e hash para o comportamento estrito do RFC-2440. O RFC-2440 é uma versão muito antiga do OpenPGP. Observe que, ao usar esta opção, os pacotes de criptografia são criados em um modo legado sem proteção MDC. Isso é perigoso e, portanto, deve ser usado apenas para experimentos. Esta opção implica --allow-old-cipher-algos. Veja também a opção --ignore-mdc-error.
--pgp6 Esta opção está obsoleta; ela é tratada como um alias para --pgp7.
--pgp7 Configura todas as opções para serem o mais compatíveis possível com o PGP 7. Isso permitiu as cifras IDEA,
3ES, CAST5, AES128, AES192, AES256 e TWOFISH, os hashes MD5, SHA1 e RIPEMD160 e os algoritmos de compressão none e ZIP. Esta opção implica em --escape-from-lines e desativa --throw-keyids.
--pgp8 Configura todas as opções para serem o mais compatíveis possível com o PGP 8. O PGP 8 é muito mais próximo do padrão OpenPGP do que as versões anteriores do PGP, então, tudo o que isso faz é desativar --throw-keyids
e definir --escape-from-lines. Todos os algoritmos são permitidos, exceto os hashes SHA224, SHA384 e SHA512.
--compliance string
Esta opção pode ser usada em vez de uma das opções acima. Os valores válidos para string são os nomes das opções acima (sem o duplo hífen) e possivelmente outros, conforme mostrado ao usar "help" para string.
--min-rsa-length n
Esta opção ajusta o modo de conformidade "de-vs" para requisitos de tamanho de chave mais rígidos. Por exemplo, um valor de 3000 transforma as chaves rsa2048 e dsa2048 em chaves não conformes com VS-NfD.
--require-compliance
Para verificar se os dados foram criptografados de acordo com as regras do modo de conformidade atual, um usuário do gpg precisa avaliar as linhas de status. Isso permite que as interfaces lidem com a verificação de conformidade de uma maneira mais flexível. No entanto, para uso em scripts, a avaliação necessária da linha de status requer um esforço considerável; esta opção pode ser usada em vez para garantir que o processo gpg seja encerrado com uma falha se as regras de conformidade não forem cumpridas. Observe que esta opção tem atualmente um efeito apenas no modo "de-vs".
Fazendo coisas que normalmente você não quer fazer
-n
--dry-run
Não faça nenhuma alteração (isso não está totalmente implementado).
--list-only
Altera o comportamento de alguns comandos. É como --dry-run, mas diferente em alguns casos. A semântica desta opção pode ser estendida no futuro. Atualmente, ela apenas ignora a passagem real de descriptografia e, portanto, permite uma listagem rápida das chaves de criptografia.
-i
--interactive
Solicita confirmação antes de substituir qualquer arquivo.
--compatibility-flags flags
Define sinalizadores de compatibilidade para contornar problemas devido a chaves ou dados não compatíveis. Os sinalizadores são fornecidos como uma lista separada por vírgulas de nomes de sinalizadores e são combinados usando OR. O sinalizador especial "none" limpa a lista e permite que você comece novamente com uma lista vazia. Para obter uma lista de sinalizadores disponíveis, a única palavra "help" pode ser usada.
--debug-level level
Seleciona o nível de depuração para investigar problemas. level pode ser um valor numérico ou por uma palavra-chave:
none Sem depuração. Um valor menor que 1 pode ser usado em vez da palavra-chave.
basic Algumas mensagens básicas de depuração. Um valor entre 1 e 2 pode ser usado em vez da palavra-chave.
advanced
Mensagens de depuração mais detalhadas. Um valor entre 3 e 5 pode ser usado em vez da palavra-chave.
expert Mensagens ainda mais detalhadas. Um valor entre 6 e 8 pode ser usado em vez da
palavra-chave.
guru Todas as mensagens de depuração disponíveis. Um valor maior que 8 pode ser usado em vez da
palavra-chave. A criação de arquivos de rastreamento de hash é habilitada apenas quando a
palavra-chave é usada.
A forma como essas mensagens são mapeadas para as flags de depuração reais não é especificada e pode mudar em versões mais recentes deste programa. No entanto, elas são cuidadosamente selecionadas para melhor auxiliar na depuração.
--debug flags
Define as flags de depuração. Todas as flags são combinadas por meio de um operador OR, e as flags podem ser fornecidas na sintaxe C (por exemplo, 0x0042) ou como uma lista separada por vírgulas de nomes de flags. Para obter uma lista de todas as flags suportadas, a palavra "help" pode ser usada. Esta opção é útil apenas para depuração, e o comportamento pode mudar a qualquer momento sem aviso prévio.
--debug-all
Define todas as flags de depuração úteis.
--debug-iolbf
Define a saída padrão para o modo de buffer de linha. Esta opção só é válida quando fornecida na linha de comando.
--debug-set-iobuf-size n
Altera o tamanho do buffer dos IOBUFs para n kilobytes. Usar 0 imprime o tamanho atual. Observe: esta é uma opção apenas para desenvolvedores e, portanto, pode ser alterada ou removida a qualquer momento sem aviso prévio.
--debug-allow-large-chunks
Para facilitar os testes de software e experimentos, esta opção permite especificar um limite de até 4 EiB (--chunk-size 62).
--debug-ignore-expiration
Esta opção tenta substituir certas datas de validade das chaves. É útil apenas para alguns testes de regressão.
--faked-system-time epoch
Esta opção é útil apenas para testes; ela define a hora do sistema para trás ou para frente para a época, que é o número de segundos decorridos desde o ano de 1970. Alternativamente, a época pode ser fornecida como uma string de data ISO completa (por exemplo, "20070924T154812").
Se você adicionar um ponto de exclamação (!) ao final de epoch, a hora do sistema parecerá estar congelada no horário especificado.
--full-timestrings
Altera o formato das datas de criação e validade impressas, de apenas a data para a data e a hora. Em geral, isso não é útil e a mesma informação já está disponível em --with-colons. Essas strings mais longas também não estão bem alinhadas com outros dados impressos.
--enable-progress-filter
Habilita certas saídas de status PROGRESS. Esta opção permite que as interfaces exibam um indicador de progresso enquanto o gpg está processando arquivos maiores. Há uma pequena sobrecarga de desempenho ao usá-la.
--status-fd n
Escreve strings de status especiais no descritor de arquivo n. Consulte o arquivo DETAILS na documentação para obter uma lista deles.
--status-file file
Semelhante a --status-fd, exceto que os dados de status são gravados no arquivo file.
--logger-fd n
Escreve a saída do log no descritor de arquivo n e não no STDERR.
--log-file file
--logger-file file
Semelhante a --logger-fd, exceto que os dados do logger são gravados no arquivo file. Use ‘socket://’ para enviar os dados para um socket.
--log-time
Prefixe todas as saídas de registro com um timestamp, mesmo que nenhum arquivo de registro seja usado.
--attribute-fd n
Escreva subpacotes de atributos para o descritor de arquivo n. Isso é mais útil para uso com
--status-fd, pois as mensagens de status são necessárias para separar os vários subpacotes
do fluxo fornecido ao descritor de arquivo.
--attribute-file file
Semelhante a --attribute-fd, exceto que os dados de atributo são gravados no arquivo file.
--comment string
--no-comments
Use string como uma string de comentário em assinaturas em texto simples e mensagens ou chaves
em formato ASCII (veja --armor). O comportamento padrão é não usar uma string de comentário.
--comment pode ser repetido várias vezes para obter várias strings de comentário. --no-comments
remove todos os comentários.
É uma boa ideia manter o comprimento de um único comentário abaixo de 60 caracteres para evitar
problemas com programas de e-mail que quebram essas linhas. Observe que as linhas de comentário,
assim como todas as outras linhas de cabeçalho, não são protegidas pela assinatura.
--emit-version
--no-emit-version
Force a inclusão da string de versão na saída em formato ASCII. Se fornecido uma vez, apenas
o nome do programa e o número principal são emitidos; se fornecido duas vezes, o número secundário
também é emitido; se fornecido três vezes, o número de micro é adicionado; e se fornecido quatro
vezes, uma identificação do sistema operacional também é adicionada. --no-emit-version (padrão)
desativa a linha de versão.
--sig-notation {name=value}
--cert-notation {name=value}
-N, --set-notation {name=value}
Coloque o par nome-valor na assinatura como dados de notação. O nome deve consistir apenas de
caracteres imprimíveis ou espaços e deve conter um caractere "@" no formato _ (substituindo o
nome de chave e o nome de domínio apropriados, é claro). Isso tem como objetivo ajudar a evitar a
poluição do namespace de notação reservado da IETF. A flag --expert ignora a verificação do "@".
O valor pode ser qualquer string imprimível; ele será codificado em UTF-8, portanto, você deve
verificar se --display-charset está definido corretamente. Se você prefixar o nome com um ponto
de exclamação (!), os dados de notação serão sinalizados como críticos (rfc4880:5.2.3.16).
--sig-notation define uma notação para dados de assinatura. --cert-notation define uma notação
para assinaturas de chave (certificações). --set-notation define ambos.
Existem códigos especiais que podem ser usados em nomes de notação. "%k" será expandido para o
ID da chave da chave que está sendo assinada, "%K" para o ID longo da chave da chave que está
sendo assinada, "%f" para a impressão digital da chave que está sendo assinada, "%s" para o ID
da chave da chave que está fazendo a assinatura, "%S" para o ID longo da chave que está fazendo
a assinatura, "%g" para a impressão digital da chave que está fazendo a assinatura (que pode ser
uma subchave), "%p" para a impressão digital da chave primária da chave que está fazendo a
assinatura, "%c" para a contagem de assinaturas do cartão inteligente OpenPGP e "%%" resulta em
um único "%". %k, %K e %f têm significado apenas ao criar uma assinatura de chave
(certificação), e %c tem significado apenas ao usar o cartão inteligente OpenPGP.
--known-notation name
Adiciona o nome à lista de notações de assinatura conhecidas. O efeito disso é que o gpg não marcará uma assinatura com uma notação de assinatura crítica desse nome como inválida. Observe que o gpg já conhece por padrão alguns nomes de notações de assinatura críticas.
--sig-policy-url string
--cert-policy-url string
--set-policy-url string
Use a string como uma URL de política para assinaturas (rfc4880: 5.2.3.20). Se você prefixá-la com um ponto de exclamação (!), o pacote de URL de política será marcado como crítico. --sig-policy-url define uma URL de política para assinaturas de dados. --cert-policy-url define uma URL de política para assinaturas de chaves (certificações). --set-policy-url define ambos.
As mesmas expansões de porcentagem usadas para dados de notação também estão disponíveis aqui.
--sig-keyserver-url string
Use a string como uma URL de servidor de chaves preferencial para assinaturas de dados. Se você prefixá-la com um ponto de exclamação (!), o pacote de URL do servidor de chaves será marcado como crítico.
As mesmas expansões de porcentagem usadas para dados de notação também estão disponíveis aqui.
--set-filename string
Use a string como o nome do arquivo que é armazenado dentro das mensagens. Isso substitui o padrão, que é usar o nome do arquivo real do arquivo que está sendo criptografado. Usar uma string vazia para string efetivamente remove o nome do arquivo da saída.
--for-your-eyes-only
--no-for-your-eyes-only
Define a flag "somente para seus olhos" na mensagem. Isso faz com que o GnuPG se recuse a salvar o arquivo, a menos que a opção --output seja fornecida, e que o PGP use um "visualizador seguro" com uma fonte "resistente a Tempest" para exibir a mensagem. Esta opção substitui --set-filename. --no-for-your-eyes-only desabilita esta opção.
--use-embedded-filename
--no-use-embedded-filename
Tente criar um arquivo com um nome conforme incorporado nos dados. Esta pode ser uma opção perigosa, pois permite sobrescrever arquivos, dando ao remetente o controle sobre como armazenar os arquivos. O padrão é não. Observe que a opção --output substitui esta opção.
Uma abordagem melhor do que usar esta opção é descriptografar para um nome de arquivo temporário e, em seguida, renomear esse arquivo para o nome do arquivo incorporado após verificar se o nome do arquivo incorporado é inofensivo. Ao usar a opção --status-fd, o gpg informa o nome do arquivo como parte da mensagem de status PLAIN TEXT. Se o nome do arquivo for importante, o uso de gpgtar é outra opção, pois o gpgtar nunca sobrescreverá um arquivo, mas descriptografará os arquivos para um novo diretório.
Observe também que, a menos que uma assinatura moderna da versão 5 seja usada, o nome do arquivo incorporado não faz parte dos dados assinados.
--cipher-algo name
Use o nome como algoritmo de cifra. Executar o programa com o comando --version produz uma lista de algoritmos suportados. Se isso não for usado, o algoritmo de cifra é selecionado nas preferências armazenadas com a chave. Em geral, você não deseja usar esta opção, pois ela permite que você viole o padrão OpenPGP. A opção --personal-cipher-preferences é a maneira segura de alcançar o mesmo objetivo.
--digest-algo nome
Use nome como o algoritmo de hash de mensagem. Executar o programa com o comando --version
produz uma lista de algoritmos suportados. Em geral, você não deve usar esta opção, pois
ela permite que você viole o padrão OpenPGP. A opção --personal-digest-preferences é a
maneira segura de realizar a mesma operação.
--compress-algo nome
Use o algoritmo de compressão nome. "zlib" é a compressão ZLIB RFC-1950. "zip" é a compressão
RFC-1951 ZIP usada pelo PGP. "bzip2" é um esquema de compressão mais moderno que pode
comprimir algumas coisas melhor do que zip ou zlib, mas com o custo de mais memória usada
durante a compressão e descompressão. "uncompressed" ou "none" desativa a compressão. Se
esta opção não for usada, o comportamento padrão é examinar as preferências de chave do
destinatário para ver quais algoritmos o destinatário suporta. Se tudo mais falhar, ZIP é
usado para máxima compatibilidade.
ZLIB pode fornecer melhores resultados de compressão do que ZIP, pois o tamanho da janela
de compressão não é limitado a 8k. BZIP2 pode fornecer ainda melhores resultados de
compressão do que isso, mas usará uma quantidade significativamente maior de memória
durante a compressão e descompressão. Isso pode ser significativo em situações com pouca
memória. Observe, no entanto, que PGP (todas as versões) suporta apenas a compressão ZIP.
Usar qualquer algoritmo diferente de ZIP ou "none" tornará a mensagem ilegível com PGP.
Em geral, você não deve usar esta opção, pois ela permite que você viole o padrão
OpenPGP. A opção --personal-compress-preferences é a maneira segura de realizar a mesma
operação.
--cert-digest-algo nome
Use nome como o algoritmo de hash de mensagem usado ao assinar uma chave. Executar o
programa com o comando --version produz uma lista de algoritmos suportados. Esteja ciente
de que, se você escolher um algoritmo que o GnuPG suporte, mas outras implementações
OpenPGP não, alguns usuários não poderão usar as assinaturas de chave que você fizer, ou
possivelmente sua chave inteira. Observe também que um algoritmo de chave pública deve ser
compatível com o algoritmo de hash especificado; portanto, selecionar um algoritmo de hash
arbitrário pode resultar em mensagens de erro de camadas criptográficas inferiores ou levar
a falhas de segurança.
--disable-cipher-algo nome
Nunca permita o uso de nome como algoritmo de cifra. O nome fornecido não será verificado
para que um algoritmo carregado posteriormente ainda seja desativado.
--disable-pubkey-algo nome
Nunca permita o uso de nome como algoritmo de chave pública. O nome fornecido não será
verificado para que um algoritmo carregado posteriormente ainda seja desativado.
--throw-keyids
--no-throw-keyids
Não coloque os IDs de chave do destinatário em mensagens criptografadas. Isso ajuda a ocultar
os destinatários da mensagem e é uma contra-medida limitada contra a análise de tráfego.
(Usando um pouco de engenharia social, qualquer pessoa que possa descriptografar a mensagem
pode verificar se um dos outros destinatários é aquele que ele suspeita.) No lado do
receptor, isso pode retardar o processo de descriptografia, pois todas as chaves secretas
disponíveis devem ser testadas. --no-throw-keyids desativa esta opção. Esta opção é
essencialmente a mesma que usar --hidden-recipient para todos os destinatários.
--not-dash-escaped
Esta opção altera o comportamento das assinaturas em texto claro para que possam ser usadas para arquivos de patch. Você não deve enviar tais arquivos criptografados por e-mail porque todos os espaços e quebras de linha também são criptografados. Você não pode usar esta opção para dados que tenham 5 hífens no início de uma linha, pois arquivos de patch não têm isso. Uma linha de cabeçalho especial no arquivo criptografado informa ao GnuPG sobre esta opção de assinatura em texto claro.
--escape-from-lines
--no-escape-from-lines
Como alguns programas de e-mail alteram linhas que começam com "From " para ">From ", é bom tratar essas linhas de forma especial ao criar assinaturas em texto claro para evitar que o sistema de e-mail corrompa a assinatura. Observe que todas as outras versões do PGP fazem isso também. Ativado por padrão. --no-escape-from-lines desativa esta opção.
--passphrase-repeat n
Especifique quantas vezes o gpg solicitará que uma nova senha seja repetida. Isso é útil para ajudar a memorizar uma senha. O padrão é 1 repetição; pode ser definido como 0 para desativar qualquer repetição de senha. Observe que um valor de n maior que 1 fará com que a janela pinentry apareça n+1 vezes, mesmo que uma versão moderna do pinentry com dois campos de entrada seja usada.
--passphrase-fd n
Leia a senha do descritor de arquivo n. Apenas a primeira linha será lida do descritor de arquivo n. Se você usar 0 para n, a senha será lida de STDIN. Isso só pode ser usado se apenas uma senha for fornecida.
Observe que, desde a Versão 2.0, esta senha só é usada se a opção --batch também for fornecida. Desde a Versão 2.1, a opção --pinentry-mode também precisa ser definida como loopback.
--passphrase-file file
Leia a senha do arquivo file. Apenas a primeira linha será lida do arquivo file. Isso só pode ser usado se apenas uma senha for fornecida. Obviamente, uma senha armazenada em um arquivo tem segurança questionável se outros usuários puderem ler este arquivo. Não use esta opção se puder evitá-la.
Observe que, desde a Versão 2.0, esta senha só é usada se a opção --batch também for fornecida. Desde a Versão 2.1, a opção --pinentry-mode também precisa ser definida como loopback.
--passphrase string
Use string como a senha. Isso só pode ser usado se apenas uma senha for fornecida. Obviamente, isso tem uma segurança muito questionável em um sistema multiusuário. Não use esta opção se puder evitá-la.
Observe que, desde a Versão 2.0, esta senha só é usada se a opção --batch também for fornecida. Desde a Versão 2.1, a opção --pinentry-mode também precisa ser definida como loopback.
--pinentry-mode mode
Defina o modo pinentry para mode. Os valores permitidos para mode são:
default
Use o padrão do agente, que é ask.
ask Força o uso do Pinentry.
cancel Emula o uso do botão de cancelamento do Pinentry.
error Retorna um erro do Pinentry (``No Pinentry'').
loopback
Redireciona as consultas do Pinentry para o chamador. Observe que, em contraste com o Pinentry, o usuário não é solicitado novamente se inserir uma senha incorreta.
--no-symkey-cache
Desativa o cache de senhas usado para criptografia e descriptografia simétrica. Este cache é baseado no valor de salt específico da mensagem (consulte --s2k-mode).
--request-origin origin
Informa ao gpg para assumir que a operação se originou, em última análise, em origin. Dependendo da origem, certas restrições são aplicadas e o Pinentry pode incluir uma nota extra sobre a origem. Os valores suportados para origin são: local, que é o padrão, remote para indicar uma origem remota ou browser para uma operação solicitada por um navegador da web.
--command-fd n
Este é um substituto para o modo de IPC de memória compartilhada obsoleto. Se esta opção estiver habilitada, a entrada do usuário nas perguntas não é esperada do TTY, mas do file descriptor fornecido. Deve ser usado em conjunto com --status-fd. Consulte o arquivo doc/DETAILS na distribuição de código-fonte para obter detalhes sobre como usá-lo.
--command-file file
Semelhante a --command-fd, exceto que os comandos são lidos do arquivo file.
--allow-non-selfsigned-uid
--no-allow-non-selfsigned-uid
Permite a importação e o uso de chaves com IDs de usuário que não são autoassinados. Isso não é recomendado, pois um ID de usuário não autoassinado é trivial de falsificar. --no-allow-non-selfsigned-uid desativa.
--allow-freeform-uid
Desativa todas as verificações sobre o formato do ID de usuário ao gerar um novo. Esta opção só deve ser usada em ambientes muito especiais, pois não garante o formato padrão de fato dos IDs de usuário.
--ignore-time-conflict
GnuPG normalmente verifica se os carimbos de data/hora associados a chaves e assinaturas têm valores plausíveis. No entanto, às vezes, uma assinatura parece ser mais antiga que a chave devido a problemas de relógio. Esta opção transforma essas verificações em um aviso. Veja também --ignore-valid-from para problemas de carimbo de data/hora em subchaves.
--ignore-valid-from
GnuPG normalmente não seleciona e usa subchaves criadas no futuro. Esta opção permite o uso de tais chaves e, portanto, exibe o comportamento anterior à versão 1.0.7. Você não deve usar esta opção, a menos que haja algum problema de relógio. Consulte também --ignore-time-conflict para problemas de carimbo de data/hora com assinaturas.
--ignore-crc-error
O formato ASCII usado pelo OpenPGP é protegido por uma soma de verificação CRC contra erros de transmissão. Ocasionalmente, o CRC é corrompido em algum lugar no canal de transmissão, mas o conteúdo real (que é protegido pelo protocolo OpenPGP) ainda está correto. Esta opção permite que o GnuPG ignore erros de CRC.
--ignore-mdc-error
Esta opção transforma uma falha na proteção de integridade MDC em um aviso. É necessário para descriptografar mensagens antigas que não usavam um MDC. Também pode ser útil se uma mensagem estiver parcialmente corrompida, mas for necessário obter o máximo de dados possível dessa mensagem corrompida. Esteja ciente de que um MDC ausente ou com falha pode ser uma indicação de um ataque. Use com extrema cautela; veja também a opção --rfc2440.
--allow-old-cipher-algos
Algoritmos de criptografia antigos, como 3DES, IDEA ou CAST5, criptografam dados usando blocos de 64 bits; os algoritmos modernos usam blocos de 128 bits. Para evitar certos ataques a esses algoritmos antigos, é sugerido não criptografar mais de 150 MiByte usando a mesma chave. Por este motivo, o gpg não permite o uso de algoritmos de tamanho de bloco de 64 bits para criptografia, a menos que esta opção seja especificada. Alguns modos de conformidade já definem ou limpam este sinalizador e, portanto, este sinalizador deve ser usado após a configuração de um modo de conformidade.
--allow-weak-digest-algos
Assinaturas feitas com algoritmos de hash considerados fracos são normalmente rejeitadas com uma mensagem "algoritmo de hash inválido". Esta opção permite a verificação de assinaturas feitas com esses algoritmos fracos. MD5 é o único algoritmo de hash considerado fraco por padrão. Veja também --weak-digest para rejeitar outros algoritmos de hash.
--weak-digest name
Trate o algoritmo de hash especificado como fraco. Assinaturas feitas em algoritmos de hash fracos são normalmente rejeitadas. Esta opção pode ser fornecida várias vezes se vários algoritmos devem ser considerados fracos. Veja também --allow-weak-digest-algos para desativar a rejeição de hashes fracos. MD5 é sempre considerado fraco e não precisa ser listado explicitamente.
--allow-weak-key-signatures
Para evitar um pequeno risco de ataques de colisão em assinaturas de chave de terceiros feitas usando SHA-1, essas assinaturas de chave são consideradas inválidas. Esta opção permite que você ignore esta restrição.
--override-compliance-check
Esta era uma opção temporária e não tem mais efeito.
--no-default-keyring
Não adicione o keyring padrão à lista de keyrings. Observe que o GnuPG precisa de um keyring para quase todas as operações. Assim, se você usar esta opção e não fornecer keyrings alternativos via --keyring, então o GnuPG ainda usará o keyring padrão.
Observe que se a opção use-keyboxd estiver habilitada em 'common.conf', nenhum keyring é usado e todas as chaves são gerenciadas pelo processo keyboxd em seu próprio banco de dados.
--no-keyring
Não use nenhum keyring. Isso substitui o padrão e todas as opções que especificam keyrings.
--skip-verify
Pule a etapa de verificação da assinatura. Isso pode ser usado para tornar a descriptografia mais rápida se a verificação da assinatura não for necessária.
--with-key-data
Imprima as listas de chaves delimitadas por dois pontos (como --with-colons) e imprima os dados da chave pública.
--list-signatures
--list-sigs
O mesmo que --list-keys, mas as assinaturas também são listadas. Este comando tem o mesmo efeito de usar --list-keys com --with-sig-list. Observe que, em contraste com --check-signatures, as assinaturas de chave não são verificadas. Este comando pode ser usado para criar uma lista de chaves de assinatura ausentes no keyring local; por exemplo:
gpg --list-sigs --with-colons USERID | \
awk -F: '$1=="sig" && $2=="?" {if($13){print $13}else{print $5}}'
--fast-list-mode
Altera a saída dos comandos de listagem para funcionar mais rapidamente; isso é alcançado deixando algumas partes em branco. Alguns aplicativos não precisam do ID do usuário e das informações de confiança fornecidas nas listagens. Ao usar essas opções, eles podem obter uma listagem mais rápida. O comportamento exato desta opção pode mudar em versões futuras. Se você estiver faltando algumas informações, não use esta opção.
--no-literal
Não é para uso normal. Consulte o código-fonte para ver para que pode ser útil.
--set-filesize
Não é para uso normal. Consulte o código-fonte para ver para que pode ser útil.
--show-session-key
Exibe a chave de sessão usada para uma mensagem. Veja --override-session-key para a opção correspondente.
Acreditamos que o Escrow de Chaves é uma Má Ideia; no entanto, o usuário deve ter a liberdade de decidir se prefere ir para a prisão ou revelar o conteúdo de uma mensagem específica sem comprometer todas as mensagens criptografadas para uma chave secreta.
Você também pode usar esta opção se receber uma mensagem criptografada que seja abusiva ou ofensiva, para provar aos administradores do sistema de mensagens que o texto criptografado corresponde a um texto simples inadequado, para que eles possam tomar medidas contra o usuário ofensor.
--override-session-key string
--override-session-key-fd fd
Não use a chave pública, mas a chave de sessão string ou a chave de sessão obtida da primeira linha lida do descritor de arquivo fd. O formato desta string é o mesmo do impresso por --show-session-key. Esta opção normalmente não é usada, mas é útil no caso de alguém forçá-lo a revelar o conteúdo de uma mensagem criptografada; usando esta opção, você pode fazer isso sem entregar a chave secreta. Observe que o uso de --override-session-key pode revelar a chave de sessão para todos os usuários locais por meio da tabela de processos global. Muitas vezes é útil combinar esta opção com --no-keyring.
--ask-sig-expire
--no-ask-sig-expire
Ao criar uma assinatura de dados, solicite um tempo de expiração. Se esta opção não for especificada, o tempo de expiração definido por meio de --default-sig-expire será usado. --no-ask-sig-expire desativa esta opção.
--default-sig-expire
O tempo de expiração padrão a ser usado para a expiração da assinatura. Valores válidos são "0" para nenhuma expiração, um número seguido pela letra d (para dias), w (para semanas), m (para meses) ou y (para anos) (por exemplo, "2m" para dois meses ou "5y" para cinco anos) ou uma data absoluta no formato AAAA-MM-DD. O padrão é "0".
--ask-cert-expire
--no-ask-cert-expire
Ao criar uma assinatura de chave, solicite um tempo de expiração. Se esta opção não for especificada, o tempo de expiração definido por meio de --default-cert-expire será usado. --no-ask-cert-expire desativa esta opção.
--default-cert-expire
O tempo de expiração padrão a ser usado para a expiração da assinatura da chave. Valores válidos são "0" para nenhuma expiração, um número seguido pela letra d (para dias), w (para semanas), m (para meses) ou y (para anos) (por exemplo, "2m" para dois meses ou "5y" para cinco anos) ou uma data absoluta no formato AAAA-MM-DD. O padrão é "0".
--default-new-key-algo string
Esta opção pode ser usada para alterar os algoritmos padrão para geração de chaves. A string é semelhante aos argumentos necessários para o comando --quick-add-key, mas ligeiramente diferente. Você precisa consultar o código-fonte para aprender os detalhes. Observe que os comandos avançados de geração de chaves podem sempre ser usados para especificar um algoritmo de chave diretamente. A definição de um modo de conformidade definirá ou limpará esta flag, portanto, ela só deve ser usada após a definição de um modo de conformidade.
--no-auto-trust-new-key
Ao criar uma nova chave, o ownertrust da nova chave é definido como ultimate. Esta opção desabilita isso e o usuário precisa atribuir manualmente um valor de ownertrust.
--force-sign-key
Esta opção modifica o comportamento dos comandos --quick-sign-key, --quick-lsign-key e os subcomandos "sign" de --edit-key, forçando a criação de uma assinatura de chave, mesmo se uma já existir.
--forbid-gen-key
Esta opção é destinada ao uso no arquivo de configuração global para proibir o uso de comandos de geração de chave. Esses comandos falharão com o código de erro para Não Ativado.
--allow-secret-key-import
Esta é uma opção obsoleta e não é usada em nenhum lugar.
--allow-multiple-messages
--no-allow-multiple-messages
Estas são opções obsoletas; elas não têm mais efeito desde o GnuPG 2.2.8.
--enable-special-filenames
Esta opção habilita um modo em que os nomes de arquivo no formato '-&n', onde n é um número decimal não negativo, se referem ao descritor de arquivo n e não a um arquivo com esse nome.
--no-expensive-trust-checks
Apenas para uso experimental.
--preserve-permissions
Não altere as permissões de um chaveiro secreto de volta para somente leitura/gravação do usuário. Use esta opção somente se você realmente sabe o que está fazendo.
--default-preference-list string
Defina a lista de preferências padrão para string. Esta lista de preferências é usada para novas chaves e se torna o padrão para "setpref" no menu --edit-key.
--default-keyserver-url name
Defina a URL padrão do servidor de chaves para name. Este servidor de chaves será usado como a URL do servidor de chaves ao escrever uma nova autoassinatura em uma chave, o que inclui a geração de chaves e a alteração de preferências.
--list-config
Exiba vários parâmetros de configuração internos do GnuPG. Esta opção é destinada a programas externos que chamam o GnuPG para executar tarefas e, portanto, geralmente não é útil. Veja o arquivo 'doc/DETAILS' na distribuição de código-fonte para obter os detalhes de quais itens de configuração podem ser listados. --list-config só pode ser usado com --with-colons definido.
--list-gcrypt-config
Exiba vários parâmetros de configuração internos do Libgcrypt.
--gpgconf-list
Este comando é semelhante a --list-config, mas geralmente é usado apenas internamente pela ferramenta gpgconf.
--gpgconf-test
Esta é mais ou menos uma ação simulada. No entanto, ele analisa o arquivo de configuração e retorna com falha se o arquivo de configuração impedir que o gpg seja iniciado. Assim, ele pode ser usado para executar uma verificação de sintaxe no arquivo de configuração.
--chuid uid
Altere o usuário atual para uid, que pode ser um número ou um nome. Isso pode ser usado da conta root para executar o gpg para outro usuário. Se uid não for o UID atual, um PATH padrão é definido e a variável de ambiente GNUPGHOME é desdefinida. Para substituir o último, a opção --homedir pode ser usada. Esta opção tem apenas efeito quando usada na linha de comando. Esta opção não tem efeito no Windows.
Opções Descontinuadas
-t, --textmode
--no-textmode
Trate os arquivos de entrada como texto e armazene-os no formato de texto canônico OpenPGP com finais de linha "CRLF" padrão. Isso também define as flags necessárias para informar ao destinatário que os dados criptografados ou assinados são texto e podem precisar ter seus finais de linha convertidos de volta para o que o sistema local usa. Esta opção era útil ao se comunicar entre duas plataformas com convenções diferentes de finais de linha (UNIX-like para Mac, Mac para Windows, etc.). --no-textmode desativa esta opção e é o padrão. Observe que esta é uma opção herdada que não deve mais ser usada por nenhum software moderno.
--force-v3-sigs
--no-force-v3-sigs
--force-v4-certs
--no-force-v4-certs
Essas opções estão obsoletas e não têm efeito desde o GnuPG 2.1.
--show-photos
--no-show-photos
Faz com que --list-keys, --list-signatures, --list-public-keys, --list-secret-keys e a verificação de uma assinatura também exibam o ID da foto anexado à chave, se houver. Veja também --photo-viewer. Essas opções estão descontinuadas. Use --list-options [no-]show-photos e/ou --verify-options [no-]show-photos em vez disso.
--show-keyring
Exibe o nome do chaveiro no cabeçalho das listagens de chaves para mostrar em qual chaveiro uma determinada chave reside. Esta opção está descontinuada: use --list-options [no-]show-keyring em vez disso.
--show-notation
--no-show-notation
Mostra as anotações de assinatura nas listagens --list-signatures ou --check-signatures, bem como ao verificar uma assinatura com uma anotação nela. Essas opções estão descontinuadas. Use --list-options [no-]show-notation e/ou --verify-options [no-]show-notation em vez disso.
--show-policy-url
--no-show-policy-url
Mostra as URLs de política nas listagens --list-signatures ou --check-signatures, bem como ao verificar uma assinatura com uma URL de política nela. Essas opções estão descontinuadas. Use --list-options [no-]show-policy-url e/ou --verify-options [no-]show-policy-url em vez disso.
--personal-aead-preferences string
Esta opção está descontinuada e não tem mais efeito desde a versão 2.3.9.
--aead-algo name
Esta opção está descontinuada e não tem mais efeito desde a versão 2.3.9.
EXEMPLOS
gpg -se -r Bob file
assine e criptografe para o usuário Bob
gpg --clear-sign arquivo
cria uma assinatura em texto puro
gpg -sb arquivo
cria uma assinatura destacada
gpg -u 0x12345678 -sb arquivo
cria uma assinatura destacada com a chave 0x12345678
gpg --list-keys user_ID
mostra as chaves
gpg --fingerprint user_ID
mostra a impressão digital
gpg --verify pgpfile
gpg --verify sigfile [datafile]
Verifica a assinatura do arquivo, mas não exibe os dados, a menos que solicitado. A segunda forma é usada para assinaturas destacadas, onde sigfile é a assinatura destacada (ASCII ou binária) e datafile são os dados assinados; se isso não for fornecido, o nome do arquivo que contém os dados assinados é construído removendo a extensão (".asc" ou ".sig") de sigfile ou solicitando o nome do arquivo ao usuário. Se a opção --output também for usada, os dados assinados são gravados no arquivo especificado por essa opção; use - para gravar os dados assinados em stdout.
COMO ESPECIFICAR UM ID DE USUÁRIO
Existem diferentes maneiras de especificar um ID de usuário para o GnuPG. Algumas delas são válidas apenas para gpg, outras são válidas apenas para gpgsm. Aqui está a lista completa de maneiras de especificar uma chave:
Por ID de chave. Este formato é deduzido do comprimento da string e seu conteúdo ou do prefixo 0x. O ID da chave de um certificado X.509 são os 64 bits inferiores de sua impressão SHA-1. O uso de IDs de chave é apenas um atalho; para todo o processamento automatizado, a impressão digital deve ser usada.
Ao usar o gpg, um ponto de exclamação (!) pode ser anexado para forçar o uso da chave primária ou secundária especificada e não tentar calcular qual chave primária ou secundária usar.
Nas quatro últimas linhas do exemplo, o ID da chave é fornecido em sua forma longa, conforme usado internamente pelo protocolo OpenPGP. Você pode ver o ID da chave longa usando a opção --with-colons.
2345674
034E556E
0134756A
0AB123456
234ABBCC34567C4
0323456784E56EAB
01B3FED1347A5612
0234AABBCC34567C4
Por impressão digital. Este formato é deduzido do comprimento da string e seu conteúdo ou do prefixo 0x. Observe que apenas a versão de 20 bytes da impressão digital está disponível com o gpgsm (ou seja, o hash SHA-1 do certificado).
Ao usar o gpg, um ponto de exclamação (!) pode ser anexado para forçar o uso da chave primária ou secundária especificada e não tentar calcular qual chave primária ou secundária usar.
A melhor maneira de especificar um ID de chave é usar a impressão digital. Isso evita quaisquer ambiguidades no caso de existirem IDs de chave duplicados.
1234343434343434434343434343434
1234343434343433434343434343734349A3434
012343434343434343434EAB3484343434343434
0E12343434343434343434EAB3484343434343434
O gpgsm também aceita dois pontos entre cada par de dígitos hexadecimais, pois este é o padrão de fato de como apresentar as impressões digitais X.509. O gpg também permite o uso da impressão digital separada por espaços, conforme impressa pelos comandos de listagem de chaves.
Por correspondência exata no ID de usuário OpenPGP. Isto é denotado por um sinal de igual no início. Não faz sentido para certificados X.509.
=Heinrich Heine <_>
Por correspondência exata em um endereço de e-mail. Isto é indicado colocando o endereço de e-mail entre os sinais de menor e maior.
<_>
Por correspondência parcial de um endereço de e-mail. Isso é indicado prefixando a string de pesquisa com @. Isso usa uma pesquisa de substring, mas considera apenas o endereço de e-mail (ou seja, dentro dos colchetes angulares).
@heinrichh
Por correspondência exata no DN do assunto. Isso é indicado por um caractere de barra no início, seguido diretamente pelo DN codificado em RFC-2253 do assunto. Observe que você não pode usar a string impressa por gpgsm --list-keys, pois ela foi reorganizada e modificada para melhor legibilidade; use --with-colons para imprimir a string bruta (mas escapada de acordo com o padrão) RFC-2253.
/CN=Heinrich Heine,O=Poets,L=Paris,C=FR
Por correspondência exata no DN do emissor. Isso é indicado por um caractere de cerquilha, seguido por uma barra e, em seguida, seguido diretamente pelo DN codificado em RFC-2253 do emissor. Isso deve retornar o certificado raiz do emissor. Veja a nota acima.
#/CN=Root Cert,O=Poets,L=Paris,C=FR
Por correspondência exata no número de série e no DN do emissor. Isso é indicado por um caractere de cerquilha, seguido pela representação hexadecimal do número de série, seguido por uma barra e o DN codificado em RFC-2253 do emissor. Veja a nota acima.
#4F03/CN=Root Cert,O=Poets,L=Paris,C=FR
Por keygrip. Isso é indicado por um caractere de e comercial seguido pelos 40 dígitos hexadecimais de um keygrip. Gpgsm imprime o keygrip ao usar o comando --dump-cert.
&D75F22C3F86E355877348498CDC92BD21010A480
Por correspondência de substring. Este é o modo padrão, mas os aplicativos podem querer indicar explicitamente isso colocando o asterisco na frente. A correspondência não diferencia maiúsculas de minúsculas.
Heine *Heine
Prefixos . e +
Esses prefixos são reservados para procurar e-mails ancorados no final e para um modo de pesquisa de palavras. Eles ainda não foram implementados e o uso deles é indefinido.
Observe que reutilizamos o identificador de caractere de cerquilha que era usado em versões antigas do GnuPG para indicar o chamado local-id. Ele não é mais usado e não deve haver conflito quando usado com coisas X.509.
Usar o formato RFC-2253 de DNs tem a desvantagem de que não é possível mapeá-los de volta para a codificação original, no entanto, não precisamos fazer isso porque nosso banco de dados de chaves armazena esta codificação como metadados.
EXPRESSÕES DE FILTRO
As opções --import-filter e --export-filter usam expressões com esta sintaxe (colchetes indicam uma parte opcional e chaves uma repetição, o espaço em branco entre os elementos é permitido):
[lc] {[{flag}] PROPNAME op VALUE [lc]}
O nome de uma propriedade (PROPNAME) pode consistir apenas em letras, dígitos e sublinhados. A descrição para o tipo de filtro descreve quais propriedades são definidas. Se uma propriedade indefinida for usada, ela será avaliada como uma string vazia. Salvo indicação em contrário, o VALUE deve sempre ser fornecido e não pode ser uma string vazia. Nenhuma aspas são definidas para o valor, portanto, o valor não pode conter as strings && ou ||, que são usadas como operadores de conexão lógica. O flag -- pode ser usado para remover esta restrição.
Os valores numéricos são calculados como long int; a notação C padrão se aplica. lc é o operador de conexão lógica: && para uma conjunção ou || para uma disjunção. Uma conjunção é assumida no início de uma expressão. As conjunções têm precedência maior que as disjunções. Se VALUE começar com um dos caracteres usados em qualquer operador, um espaço após o operador é obrigatório.
Os operadores suportados (op) são:
`=~` A substring deve corresponder.
`!~` A substring não deve corresponder.
`=` A string completa deve corresponder.
`<>` A string completa não deve corresponder.
`==` O valor numérico deve corresponder.
`!=` O valor numérico não deve corresponder.
`<=` O valor numérico do campo deve ser menor ou igual ao valor.
`<` O valor numérico do campo deve ser menor que o valor.
`>` O valor numérico do campo deve ser maior que o valor.
`>=` O valor numérico do campo deve ser maior ou igual ao valor.
`-le` O valor de string do campo deve ser menor ou igual ao valor.
`-lt` O valor de string do campo deve ser menor que o valor.
`-gt` O valor de string do campo deve ser maior que o valor.
`-ge` O valor de string do campo deve ser maior ou igual ao valor.
`-n` Retorna verdadeiro se o valor não estiver vazio (nenhum valor permitido).
`-z` Retorna verdadeiro se o valor estiver vazio (nenhum valor permitido).
`-t` Alias para `PROPNAME != 0` (nenhum valor permitido).
`-f` Alias para `PROPNAME == 0` (nenhum valor permitido).
Os valores para flag devem ser separados por espaços. As flags suportadas são:
`--` `VALUE` se estende até o final da expressão.
`-c` A correspondência de string nesta parte é feita de forma sensível a maiúsculas e minúsculas.
`-t` Os espaços à esquerda e à direita não são removidos de `VALUE`. O espaço opcional após o `op` é obrigatório aqui.
As opções de filtro concatenam várias especificações para um filtro do mesmo tipo. Por exemplo, as quatro opções neste exemplo:
`--import-filter keep-uid="uid =~ Alfa"`
`--import-filter keep-uid="&& uid !~ Test"`
`--import-filter keep-uid="|| uid =~ Alpha"`
`--import-filter keep-uid="uid !~ Test"`
que é equivalente a
`--import-filter \
keep-uid="uid =~ Alfa" && uid !~ Test" || uid =~ Alpha" && "uid !~ Test"`
importa apenas os IDs de usuário de uma chave que contenha as strings "Alfa" ou "Alpha", mas não a string "Test".
VALORES DE CONFIANÇA
Os valores de confiança são usados para indicar a confiança do proprietário e a validade das chaves e dos IDs de usuário. Eles são exibidos com letras ou strings:
`unknown`
Nenhuma confiança do proprietário atribuída / ainda não calculada.
`e`
`expired`
O cálculo da confiança falhou; provavelmente devido a uma chave expirada.
`q`
`undefined`, `undef`
Informações insuficientes para o cálculo.
`n`
`never` Nunca confie nesta chave.
`m`
`marginal` Marginalmente confiável.
`f`
`full` Totalmente confiável.
`u`
`ultimate` Ultimamente confiável.
`r`
`revoked`
Apenas para validade: a chave ou o ID do usuário foi revogado.
`?`
`err` O programa encontrou um valor de confiança desconhecido.
ARQUIVOS
Existem alguns arquivos de configuração para controlar certos aspectos da operação do gpg. A menos que especificado de outra forma, eles são esperados no diretório inicial atual (veja: [opção --homedir]).
gpg.conf
Este é o arquivo de configuração padrão lido pelo gpg no início. Ele pode conter qualquer opção longa válida; os dois traços iniciais não podem ser inseridos e a opção não pode ser abreviada. Este nome padrão pode ser alterado na linha de comando (veja: [gpg-option --options]). Você deve fazer backup deste arquivo.
common.conf
Este é um arquivo de configuração opcional lido pelo gpg no início. Ele pode conter opções que se aplicam a todos os componentes do GnuPG. Seu uso principal atual é para a opção "use-keyboxd". Se o diretório padrão '~/.gnupg' não existir, o GnuPG cria este diretório e um arquivo 'common.conf' com "use-keyboxd".
Observe que em instalações maiores, é útil colocar arquivos predefinidos no diretório '/etc/skel/.gnupg' para que os novos usuários iniciem com uma configuração funcional. Para usuários existentes, um pequeno script auxiliar é fornecido para criar esses arquivos (veja: [addgnupghome]).
Para fins internos, o gpg cria e mantém alguns outros arquivos; todos eles estão localizados no diretório pessoal atual (veja: [option --homedir]). Apenas o programa gpg pode modificar esses arquivos.
~/.gnupg
Este é o diretório pessoal padrão que é usado se nem a variável de ambiente GNUPGHOME nem a opção --homedir forem fornecidas.
~/.gnupg/pubring.gpg
O chaveiro público usando um formato antigo. Você deve fazer backup deste arquivo.
Se este arquivo não estiver disponível, o gpg usa o novo formato keybox e cria um arquivo 'pubring.kbx', a menos que esse arquivo já exista, caso em que esse arquivo também será usado para chaves OpenPGP.
Observe que, no caso de ambos os arquivos, 'pubring.gpg' e 'pubring.kbx' existirem, mas o último não tiver chaves OpenPGP, o arquivo antigo 'pubring.gpg' será usado. Tenha cuidado: as versões do GnuPG anteriores a 2.1 sempre usarão o arquivo 'pubring.gpg' porque não conhecem o novo formato keybox. No caso de você precisar usar o GnuPG 1.4 para descriptografar dados arquivados, você deve manter este arquivo.
~/.gnupg/pubring.gpg.lock
O arquivo de bloqueio para o chaveiro público.
~/.gnupg/pubring.kbx
O chaveiro público usando o novo formato keybox. Este arquivo é compartilhado com o gpgsm. Você deve fazer backup deste arquivo. Veja acima para a relação entre este arquivo e seu predecessor.
Para converter um arquivo 'pubring.gpg' existente para o formato keybox, primeiro faça backup dos valores de 'ownertrust', depois renomeie 'pubring.gpg' para 'publickeys.backup', para que ele não seja reconhecido por nenhuma versão do GnuPG, execute o comando import e, finalmente, restaure os valores de 'ownertrust':
$ cd ~/.gnupg
$ gpg --export-ownertrust >otrust.lst
$ mv pubring.gpg publickeys.backup
$ gpg --import-options restore --import publickeys.backup
$ gpg --import-ownertrust otrust.lst
~/.gnupg/pubring.kbx.lock
O arquivo de bloqueio para 'pubring.kbx'.
~/.gnupg/secring.gpg
O chaveiro secreto legado, conforme usado pelas versões do GnuPG anteriores à 2.1. Não é usado pelo GnuPG 1 e versões posteriores. Você pode querer mantê-lo caso precise usar o GnuPG 1.4 para descriptografar dados arquivados.
~/.gnupg/secring.gpg.lock
O arquivo de bloqueio para o keyring secreto legado.
~/.gnupg/.gpg-v21-migrated
Arquivo que indica que a migração para o GnuPG 2.1 foi realizada.
~/.gnupg/trustdb.gpg
O banco de dados de confiança. Não há necessidade de fazer backup deste arquivo; é melhor fazer backup dos valores de ownertrust (veja: [opção --export-ownertrust]).
~/.gnupg/trustdb.gpg.lock
O arquivo de bloqueio para o banco de dados de confiança.
~/.gnupg/random_seed
Um arquivo usado para preservar o estado do pool interno de números aleatórios.
~/.gnupg/openpgp-revocs.d/
Este é o diretório onde o gpg armazena os certificados de revogação pré-gerados. O nome do arquivo corresponde à impressão digital OpenPGP da respectiva chave. É sugerido fazer backup desses certificados e, se a chave privada principal não estiver armazenada no disco, movê-los para um dispositivo de armazenamento externo. Qualquer pessoa que possa acessar esses arquivos poderá revogar a chave correspondente. Você pode querer imprimi-los. Você deve fazer backup de todos os arquivos neste diretório e tomar cuidado para manter este backup seguro.
A operação é ainda mais controlada por algumas variáveis de ambiente:
HOME Usado para localizar o diretório inicial padrão.
GNUPGHOME Se definido, o diretório usado em vez de "\~/.gnupg".
GPG_AGENT_INFO
Esta variável está obsoleta; era usada pelas versões do GnuPG anteriores à 2.1.
PINENTRY_USER_DATA
Este valor é passado através do gpg-agent para o pinentry. É útil transmitir informações adicionais para um pinentry personalizado.
COLUMNS
LINES Usado para dimensionar algumas telas para o tamanho total da tela.
LANGUAGE
Além de seu uso pelo GNU, é usado na versão W32 para substituir a seleção de idioma feita através do Registro. Se usado e definido para um nome de idioma válido e disponível (langid), o arquivo com a tradução é carregado de gpgdir/gnupg.nls/langid.mo. Aqui, gpgdir é o diretório do qual o binário gpg foi carregado. Se não puder ser carregado, o Registro é usado e, como último recurso, o sistema de localidade nativo do Windows é usado.
GNUPG_BUILD_ROOT
Esta variável é usada apenas pela suíte de teste de regressão como uma ajuda em sistemas operacionais sem suporte adequado para determinar o nome do arquivo de texto de um processo.
GNUPG_EXEC_DEBUG_FLAGS
Esta variável permite que você habilite diagnósticos para o gerenciamento de processos. Um valor decimal numérico é esperado. O bit 0 habilita diagnósticos gerais, o bit 1 habilita certos avisos no Windows.
Ao chamar o componente gpg-agent, o gpg envia um conjunto de variáveis de ambiente para o gpg-agent. Os nomes dessas variáveis podem ser listados usando o comando:
gpg-connect-agent 'getinfo std_env_names' /bye | awk '$1=="D" {print $2}'
NOTAS
O gpg é frequentemente usado como um motor de backend por outros softwares. Para ajudar nisso, uma interface de máquina foi definida para ter uma maneira inequívoca de fazer isso. As opções --status-fd e --batch são quase sempre necessárias para isso.
Uso programático do GnuPG
Considere usar o GPGME em vez de chamar o gpg diretamente. O GPGME oferece uma interface estável e independente do backend para muitas operações criptográficas. Ele suporta OpenPGP e S/MIME, e também permite a interação com vários componentes do GnuPG.
O GPGME fornece uma API C e vem com vinculações para C++, Qt e Python. Vinculações para outras linguagens estão disponíveis.
Diretórios "home" efêmeros
Às vezes, você deseja conter os efeitos de alguma operação, por exemplo, deseja importar uma chave para inspecioná-la, mas não deseja que essa chave seja adicionada ao seu chaveiro. Em versões anteriores do GnuPG, era possível especificar arquivos de chaveiro alternativos para chaves públicas e secretas. No entanto, nas versões modernas do GnuPG, alteramos a forma como as chaves secretas são armazenadas, a fim de proteger melhor o material da chave secreta, e não foi possível preservar essa interface.
A maneira preferida de fazer isso é usar diretórios "home" efêmeros. Essa técnica funciona em todas as versões do GnuPG.
Crie um diretório temporário, crie (ou copie) uma configuração que atenda às suas necessidades e faça com que o gpg use este diretório, seja usando a variável de ambiente GNUPGHOME ou a opção --homedir. O GPGME também oferece suporte a isso em um nível por contexto, modificando as informações do mecanismo de contextos. Agora, execute qualquer operação que desejar, importe e exporte o material da chave conforme necessário. Quando terminar, você pode excluir o diretório. Todos os serviços de backend do GnuPG que foram iniciados detectarão isso e serão encerrados.
A interface de manipulação rápida de chaves
As versões recentes do GnuPG têm uma interface para manipular chaves sem usar o comando interativo --edit-key. Esta interface foi adicionada principalmente para o benefício do GPGME (considere usar o GPGME, veja a subseção do manual "Uso programático do GnuPG"). Esta interface é descrita na subseção "Como gerenciar suas chaves".
Geração de chaves não assistida
O comando --generate-key pode ser usado juntamente com a opção --batch para geração de chaves não assistida. Esta é a maneira mais flexível de gerar chaves, mas também é a mais complexa. Considere usar a interface de manipulação rápida de chaves descrita na subseção anterior "A interface de manipulação rápida de chaves".
Os parâmetros para a chave são lidos do stdin ou fornecidos como um arquivo na linha de comando. O formato do arquivo de parâmetros é o seguinte: apenas texto, o comprimento da linha é limitado a cerca de 1000 caracteres. A codificação UTF-8 deve ser usada para especificar caracteres não ASCII. Linhas em branco são ignoradas. Espaços em branco à esquerda e à direita são ignorados. Uma hashtag como o primeiro caractere não espaço em branco indica uma linha de comentário. As instruções de controle são indicadas por um sinal de porcentagem no início, seus argumentos são separados por espaços em branco da palavra-chave. Os parâmetros são especificados por uma palavra-chave, seguida por dois pontos; os argumentos são separados por espaços em branco. O primeiro parâmetro deve ser "Key-Type", mas as instruções de controle podem ser colocadas em qualquer lugar. A ordem dos parâmetros não importa, exceto para "Key-Type". Os parâmetros são usados apenas para o bloco de chaves gerado (chave primária e subchaves); os parâmetros de conjuntos anteriores não são usados. Alguns verificações de sintaxe podem ser executadas. A chave começa quando o final do arquivo de parâmetros é alcançado, o próximo parâmetro "Key-Type" é encontrado ou a instrução de controle "%commit" é encontrada.
Comandos de controle:
%echo text
Imprime o texto como uma mensagem de diagnóstico.
%dry-run
Suprime a geração real da chave (útil para verificação da sintaxe).
%commit
Realiza a geração da chave. Observe que um commit implícito é feito no próximo parâmetro.
%pubring filename
Não grava a chave no keyring padrão ou no keyring especificado na linha de comando, mas no arquivo filename.
Isso deve ser fornecido antes do primeiro commit para ter efeito; a especificação duplicada do mesmo
filename é ignorada, e o último filename antes de um commit é usado. O filename é usado até que um novo filename seja usado (em pontos de commit), e todas as chaves são gravadas nesse arquivo. Se
um novo filename for fornecido, este arquivo será criado (e sobrescreverá um arquivo existente).
Veja a subseção anterior "Diretórios home efêmeros" para uma maneira mais robusta de conter efeitos colaterais.
%secring filename
Esta opção não tem efeito para GnuPG 2.1 e versões posteriores.
Veja a subseção anterior "Diretórios home efêmeros".
%ask-passphrase
%no-ask-passphrase
Esta opção não tem efeito desde a versão 2.1 do GnuPG.
%no-protection
Usar esta opção permite a criação de chaves sem proteção por senha. Esta opção é destinada principalmente a testes de regressão.
%transient-key
Se fornecida, as chaves são criadas usando um gerador de números aleatórios mais rápido e ligeiramente menos seguro. Esta opção pode ser usada para chaves que são usadas apenas por um curto período de tempo e não requerem força criptográfica total. Só tem efeito se for usada em conjunto com o comando de controle '%no-protection'.
Parâmetros Gerais:
Key-Type: algo
Inicia um novo bloco de parâmetros, especificando o tipo de chave primária. O algoritmo deve ser
capaz de assinar. Este é um parâmetro obrigatório. algo pode ser um número de algoritmo OpenPGP ou uma string com o nome do algoritmo. O valor especial 'default' pode ser usado
para algo para criar o tipo de chave padrão; neste caso, um 'Key-Usage' não deve ser fornecido e
'default' também deve ser usado para 'Subkey-Type'.
Key-Length: nbits
O comprimento solicitado da chave gerada em bits. O valor padrão é retornado ao executar o comando 'gpg --gpgconf-list'. Para chaves ECC, este parâmetro é ignorado.
Key-Curve: curve
A curva elíptica solicitada da chave gerada. Este é um parâmetro obrigatório para chaves ECC. É ignorado para chaves que não são ECC.
Key-Grip: hexstring
Este é opcional e usado para gerar uma CSR ou certificado para uma chave já existente. Key-Length será ignorado quando fornecido.
Key-Usage: usage-list
Lista delimitada por espaços ou vírgulas de usos de chave. Os valores permitidos são 'encrypt', 'sign' e 'auth'. Isso é usado para gerar os sinalizadores de chave. Certifique-se de que o algoritmo seja capaz desse uso. Observe que o OpenPGP exige que todas as chaves primárias sejam capazes de certificação, portanto, não importa qual uso seja fornecido aqui, o sinalizador 'cert' estará presente. Se nenhum 'Key-Usage' for especificado e 'Key-Type' não for 'default', todos os usos permitidos para aquele algoritmo específico serão usados; se não for fornecido, mas 'default' for usado, o uso será 'sign'.
Subkey-Type: algo
Gera uma chave secundária (subkey). Atualmente, apenas uma subchave pode ser gerenciada. Veja também ‘Key-Type’ acima.
Subkey-Length: nbits
Comprimento da chave secundária (subkey) em bits. O padrão é retornado ao executar o comando ‘gpg --gpgconf-list’.
Subkey-Curve: curve
Curva de chave para uma subchave; semelhante a ‘Key-Curve’.
Subkey-Usage: usage-list
Listas de uso de chave para uma subchave; semelhante a ‘Key-Usage’.
Passphrase: string
Se você quiser especificar uma senha para a chave secreta, insira-a aqui. O padrão é usar a caixa de diálogo Pinentry para solicitar uma senha.
Name-Real: name
Name-Comment: comment
Name-Email: email
As três partes de um nome de usuário. Lembre-se de usar a codificação UTF-8 aqui. Se você não fornecer nenhum deles, nenhum ID de usuário será criado.
Expire-Date: iso-date|(number[d|w|m|y])
Defina a data de validade para a chave (e a subchave). Pode ser inserida no formato de data ISO (por exemplo, "20000815T145012") ou como um número de dias, semanas, meses ou anos após a data de criação. A notação especial "seconds=N" também é permitida para especificar um número de segundos desde a criação. Sem uma letra, dias são assumidos. Observe que não há verificação feita sobre o estouro do tipo usado pelo OpenPGP para carimbos de data/hora. Portanto, é melhor garantir que o valor fornecido faça sentido. Embora o OpenPGP trabalhe com intervalos de tempo, o GnuPG usa um valor absoluto internamente e, portanto, o último ano que podemos representar é 2105.
Creation-Date: iso-date
Defina a data de criação da chave, conforme armazenado nas informações da chave e que também faz parte do cálculo da impressão digital. Pode ser usada uma data como "1986-04-26" ou um carimbo de data/hora completo como "19860426T042640". A hora é considerada UTC. A notação especial "seconds=N" pode ser usada para especificar diretamente o número de segundos desde a época (tempo Unix). Se não for fornecido, a hora atual será usada.
Preferences: string
Defina os valores de preferência de cifra, hash e compressão para esta chave. Espera-se o mesmo tipo de string do subcomando ‘setpref’ no menu --edit-key.
Revoker: algo:fpr [sensitive]
Adicione um revogador designado à chave gerada. Algo é o algoritmo de chave pública do revogador designado (por exemplo, RSA=1, DSA=17, etc.). fpr é a impressão digital do revogador designado. fpr não pode conter espaços ou dois pontos. A flag opcional ‘sensitive’ marca o revogador designado como informação sensível. Apenas chaves v4 e v5 podem ser revogadores designados.
Keyserver: string
Este é um parâmetro opcional que especifica a URL preferencial do servidor de chaves para a chave.
Handle: string
Este é um parâmetro opcional usado apenas com as linhas de status KEY_CREATED e KEY_NOT_CREATED. string pode ter até 100 caracteres e não deve conter espaços. É útil para geração de chaves em lote para associar um bloco de parâmetros de chave a uma linha de status.
Aqui está um exemplo de como criar uma chave em um diretório temporário: $ export GNUPGHOME="$(mktemp -d)" $ cat >foo <<EOF %echo Gerando uma chave OpenPGP básica Key-Type: DSA Key-Length: 1024 Subkey-Type: ELG-E Subkey-Length: 1024 Name-Real: Joe Tester Name-Comment: with stupid passphrase Name-Email: _ Expire-Date: 0 Passphrase: abc # Faça um commit aqui, para que possamos imprimir "done" mais tarde :-) %commit %echo done EOF $ gpg --batch --generate-key foo [...] $ gpg --list-secret-keys /tmp/tmp.0NQxB74PEf/pubring.kbx ------------------------------sec dsa1024 2016-12-16 [SCA] 768895903FC1C44045C8CB95EEBDB71E9E849D0 uid [ultimate] Joe Tester (with stupid passphrase) <_> ssb elg1024 2016-12-16 [E]
Se você quiser criar uma chave com os algoritmos padrão, você usaria estes parâmetros: %echo Gerando uma chave padrão Key-Type: default Subkey-Type: default Name-Real: Joe Tester Name-Comment: with stupid passphrase Name-Email: _ Expire-Date: 0 Passphrase: abc # Faça um commit aqui, para que possamos imprimir "done" mais tarde :-) %commit %echo done
BUGS
Em sistemas mais antigos, este programa deve ser instalado como setuid(root). Isso é necessário para bloquear páginas de memória. Bloquear páginas de memória impede que o sistema operacional grave páginas de memória (que podem conter senhas ou outros materiais confidenciais) no disco. Se você não receber uma mensagem de aviso sobre memória insegura, seu sistema operacional suporta o bloqueio sem ser root. O programa abandona os privilégios de root assim que a memória bloqueada é alocada.
Observe também que alguns sistemas (especialmente laptops) têm a capacidade de ``suspender para o disco'' (também
conhecido como suspensão segura'' ouhibernação''). Isso grava toda a memória no disco antes de
entrar em um modo de baixo consumo ou até mesmo desligado. A menos que medidas sejam tomadas no sistema operacional para proteger
a memória salva, senhas ou outros materiais confidenciais podem ser recuperados dela posteriormente.
Antes de relatar um bug, você deve primeiro pesquisar nos arquivos de listas de discussão por problemas semelhantes e, em segundo lugar, verificar se um bug desse tipo já foi relatado em nosso rastreador de bugs em https://bugs.gnupg.org.
VEJA TAMBÉM
gpgv(1), gpgsm(1), gpg-agent(1)
A documentação completa desta ferramenta é mantida como um manual Texinfo. Se o GnuPG e o programa info estiverem devidamente instalados em seu site, o comando
info gnupg
deve fornecer acesso ao manual completo, incluindo uma estrutura de menu e um índice.