Preciso resolver um desafio de criptografia. Porém não consegui entender a lógica do projeto.
Em anexo estão os arquivos necessários, inclusive o programa usado para criptografar:
openssl.exe
De acordo com o desenho, há dois usuários no sistema: “A” e “B”. O usuário “A” está enviando para “B” os seguintes arquivos: “
M.DES”, “
Ca2.rsa” e “
hma.RSA”
Preciso que me enviem por e-mail 4 coisas:
1) A mensagem “
M.BAT” decifrada (se você resolver o desafio, a mensagem decifrada vai ser útil).
2) O conteúdo do arquivo “
HASH.TXT” que é o hash da chave “
Ks.txt”.
3) O cálculo do hash da chave “
Ks.txt” (deve ser igual ao conteúdo do arquivo
hash.TXT)
4) O conteúdo da chave “
Ks.txt”
Os comandos estão abaixo. Substitua as opções em vermelho pelos nomes usados no desenho. Para resolver o
desafio não há necessidade de usar todos os comandos, apenas alguns.
Mostrar o conteúdo de uma mensagem de texto ou arquivo [arquivo1] na tela
type [arquivo1]
Criar um arquivo [arquivo1] contento uma chave [conteúdo da chave]
echo [conteúdo da chave] > [arquivo1]
Calcular um hash de um arquivo [arquivo1] gerando o cálculo em um novo arquivo [arquivo2]
openssl dgst -[algoritmo de hash] [arquivo1] > [arquivo2]
Criptografar simétricamente um arquivo [arquivo1] com o conteúdo de uma chave [conteúdo da chave]
gerando um novo arquivo [arquivo2]
openssl enc -[algoritmo de criptografia] -in [arquivo1] -out [arquivo2] -k [conteúdo da chave]
Gerar uma chave privada assimétrica com rsa, de [quantidade de bits da chave] bits e armazená-la em um
arquivo [arquivo1]
openssl genrsa -out [chave privada] [quantidade de bits da chave]
Gerar a chave pública [chave pública], a partir da chave privada [chave privada] gerada anteriormente
openssl rsa -in [chave privada] -pubout -out [chave pública]
Assinar (autenticar) um arquivo [arquivo1] com uma chave privada [chave privada] usando algoritmo rsa e
gerando um novo arquivo [arquivo2]
openssl rsautl -in [arquivo1] -out [arquivo2] -inkey [chave privada] -sign
Criptografar um arquivo [arquivo1] com uma chave pública [chave pública], usando um rsa e gerando um
novo arquivo [arquivo2]
openssl rsautl -in [arquivo1] -out [arquivo2] -pubin -inkey [chave publica] -encrypt
Decifrar um arquivo [arquivo1] com uma chave pública [chave publica] gerando um novo arquivo [arquivo2]
openssl rsautl -verify -in [arquivo1] -inkey [chave publica] -raw -pubin > [arquivo2]
Decifrar um arquivo [arquivo1] com uma chave privada [chave privada] gerando um novo arquivo [arquivo2]
openssl rsautl -in [arquivo1] -out [arquivo2] -inkey [chave privada] -decrypt
Decifrar um arquivo [arquivo1] com o conteúdo de uma chave simétrica [senha] gerando um novo arquivo
[arquivo2]
openssl enc -d -des-ecb -p -in [arquivo1] > [arquivo2]
Dica: a chave simétrica [senha] será pedida após o comando.
Caso alguém se interesse mando os arquivos por e-mail , tenho urgencia até o dia 21/06/2016. O as arquivos devem ser feitos no programa openSSL
Prazo de Entrega: 16 de Junho de 2016