Qual é a quantidade mínima de dados que eu preciso para assinar um arquivo?

2

Digamos que eu tenha um arquivo de vários gigabytes em um computador trabalho e (2) eu tenha minha chave privada GnuPG no meu computador home . Quero assinar o arquivo realmente grande com minha chave privada.

Eu confio completamente no meu computador home .

Eu confio no computador trabalho em certo grau, eu confio que não há códigos maliciosos sendo executados nele no momento, eu confio que não há ninguém mexendo nas funções hash, e eu confio no a conexão de rede entre trabalho e home é segura e não alterada. O que eu não quero quer fazer é salvar minha chave privada muito valiosa no computador trabalho , nem mesmo temporariamente.

Eu também não quero passar 4 horas transmitindo o arquivo realmente grande pela Internet de trabalho para home . Qual é a quantidade mínima de dados que eu preciso enviar entre os computadores work e home para assinar o arquivo com minha chave privada?

O que eu estou tentando descobrir é se tudo o que o PGP faz é assinar o hash do arquivo, é possível fazer o hash do arquivo no computador trabalho e enviar o hash (juntamente com quaisquer outros metadados necessários) para o computador home ser assinado, de forma transparente, como se eu tivesse o arquivo em mãos?

O SSH possui recursos de encaminhamento de agentes. Existe um recurso similar no GnuPG, ou eu precisaria modificar o código fonte se eu quisesse criar algo assim?

    
por IQAndreas 16.10.2015 / 21:56

1 resposta

1

Tudo o que você realmente precisa é a soma de hash apropriada do arquivo, mas não estou ciente de fazer o GnuPG ou qualquer outra implementação criando uma assinatura a partir de uma soma de hash em vez de um arquivo (sem modificar o código-fonte).

Mas posso propor uma alternativa razoável: use cartões inteligentes OpenPGP , como os da FSFE como cartão de membro e também disponível para compra, ou um YubiKey Neo capaz de OpenPGP (que simula um smartcard OpenPGP). Com esse cartão conectado ao seu computador de trabalho, você poderá realizar operações criptográficas usando a chave privada armazenada no cartão sem que essa chave privada saia desse dispositivo. O cartão contém seu próprio processador criptográfico, receberá o hash do arquivo e retornará a assinatura de volta ao computador.

    
por 16.10.2015 / 22:26