Existe uma maneira de editar um arquivo protegido por senha sem ter que redigitar a senha o tempo todo?

5

Eu quero criptografar um arquivo de texto usando uma senha e uma maneira de editar esse arquivo com segurança.

O problema que estou tendo é que eu não consegui encontrar uma maneira simples de fazer isso, apenas exigindo a senha para o processo de descriptografia.

Conforme recomendado em esta outra pergunta , No momento, estou tentando usar o gpg para criptografar meu arquivo e vim-gnupg para editá-lo.

A primeira alternativa que tentei foi criptografar com gpg --encrypt --default-recipient-self . Isso funciona bem com o vim-gnupg e o gpg-agent em termos de não ter que digitar a frase-senha o tempo todo, mas acho o uso da criptografia assimétrica um pouco incômodo. Por que preciso criar um par de chaves com meu nome e e-mail e usar criptografia assimétrica, se tudo o que estou fazendo é criptografar as coisas para mim? Eu também preciso levar os arquivos-chave comigo em vez de apenas o arquivo criptografado.

A segunda alternativa que tentei foi criptografar com gpg --symmetric , que só pede uma senha. Desta vez, o problema foi não ter que digitar a senha repetidamente. Quando o vim-gnupg salva o arquivo, ele pede uma nova senha (e me digita duas vezes) em vez de apenas reutilizar a mesma senha que foi usada para descriptografar o arquivo. Existe uma maneira de não fazer isso?

    
por hugomg 25.04.2015 / 00:58

2 respostas

2

A página man do GPG tem várias opções nas quais você provavelmente está interessado, que você poderia trabalhar em seu próprio script / função decrypt-edit-encrypt . Como:

  • --passphrase-fd n - Leia a senha do descritor de arquivo n
  • --passphrase-file file - Leia a frase secreta do arquivo arquivo ... Obviamente, uma frase secreta armazenada em um arquivo           é de segurança questionável se outros usuários puderem ler este arquivo.           Não use essa opção se puder evitá-la.
  • --passphrase string - Use string como passphrase ... Obviamente, isso é muito questionável           segurança em um sistema multiusuário. Não use essa opção se você           pode evitá-lo.

Colocar um arquivo de chaves no ram (tmpfs) e não ser legível por qualquer outra pessoa pode ser adequado. Ou, para o Linux, você poderia examinar o recurso de gerenciamento de chaves do kernel, ou seja, keyctl

    
por 29.04.2015 / 14:01
1

Eu não sei de nenhuma maneira de fazer o que você quer com as ferramentas padrão.

Dito isto, um script wrapper realmente simples pode conseguir isso.

Como alternativa, se você estiver no Linux, poderá usar pirita , que é um wrapper de GUI para gpg & openssl. Com ele, você pode digitar sua senha na GUI uma única vez para descriptografar, editar o texto descriptografado e, em seguida, pressionar um botão para criptografar novamente (que usa a mesma frase secreta).

    
por 25.04.2015 / 17:11