it-swarm-pt.tech

Como posso criptografar uma string no shell?

Posso criptografar uma mensagem (string) usando uma chave pública no prompt de comando? Além disso, como descriptografar o resultado posteriormente?

21
Rajesh

Outra opção é openssl:

# generate a 2048-bit RSA key and store it in key.txt
openssl genrsa -out key.txt 2048

# encrypt "hello world" using the RSA key in key.txt
echo "hello world" | openssl rsautl -inkey key.txt -encrypt >output.bin

# decrypt the message and output to stdout
openssl rsautl -inkey key.txt -decrypt <output.bin
29
laalto

Se você tiver gpg instalado, este é um método de criptografia de força industrial.

gpg --encrypt -r destinatá[email protected]> tempfile

Digite dados no console e pressione Ctrl+D para finalizar o texto. Isso fornecerá dados criptografados em tempfile. Para descriptografar:

gpg --decrypt <tempfile

Você precisará da senha para [email protected] para descriptografar a mensagem.

12
Greg Hewgill
  1. Gere um par de chaves públicas/privadas

    $ openssl genrsa -out rsa_key.pri 2048; openssl rsa -in rsa_key.pri -out rsa_key.pub -outform PEM -pubout
    
  2. Criptografe a string usando a chave pública e armazene em um arquivo

    $ echo "stockexchange.com" | openssl rsautl -encrypt -inkey rsa_key.pub -pubin -out secret.dat
    
  3. Descriptografar usando chave privada

    $ string=`openssl rsautl -decrypt -inkey rsa_key.pri -in secret.dat `; echo $string
    stockexchange.com
    
6
Kexin Z

man crypt (1)

nota:

o crypt implementa uma máquina de um rotor projetada ao longo das linhas do Enigma alemão, mas com um rotor de 256 elementos. Os métodos de ataque a essas máquinas são amplamente conhecidos, portanto, a criptografia fornece segurança mínima.

Mas tudo bem para fins de demonstração.

4
Nifle