• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

pedrotuga

como posso encriptar uma string em sellscript?

6 mensagens neste tópico

Existe algum comando que me faça isso?

Não quero obter um digeste, quero mesmo encryptar uma string de forma a que possa ser recuperada usando uma chave.

O gnupg é completamente overkill para eta finalidade, estou à procura de uma função ou comando que seja a implementação de um algoritmo de encriptação (cifragem, whatever), que receba os dados, a chave e encripte isto.

Não precisa sequer de usar o negociamento de chaves publicas vs chaves privadas.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Muito provavelmente já tens o OpenSSL instalado :D

http://www.openssl.org/

http://openssl.org/docs/apps/enc.html

$ echo test | openssl enc -rc4 -k mypassword | openssl enc -a

U2FsdGVkX19bhXdcLihrkA3armB5

$ echo U2FsdGVkX19bhXdcLihrkA3armB5 | openssl enc -d -a | openssl enc -d -rc4 -k mypassword

test

O "enc -a" (e o "enc -d -a") serve para (des)codificar em base64 para poder ver o resultado na consola.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Qual é o problema se eu não converter para base64?

Já agora... estou impressionado, como é que sabias isto? Isto requer alguma prática e a leitura de mais do que uma manpage?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Qual é o problema se eu não converter para base64?

Nenhum ... mas a minha consola não apresenta de forma eficaz alguns bytes.

Em vez de fazer base64, posso mandar para o hexdump:

$ echo test | openssl enc -rc4 -k mypassword | hd

00000000  53 61 6c 74 65 64 5f 5f  48 9b 3f 06 1c f8 d1 a4  |Salted__H.?.....|

00000010  ca b1 45 aa 1c                                    |..E..|

00000015

$

Outra razão é: como é que fazia a operação inversa? Eu prefiro fazer o "echo U2FsdGVkX19bhXdcLihrkA3armB5" do que codificar os caracteres um a um

$ echo -e -n '\x53\x61\x6c\x74\x65\x64\x5f\x5f\x48\x9b\x3f\x06\x1c\xf8\xd1\xa4\xca\xb1\x45\xaa\x1c' | openssl enc -d -rc4 -k mypassword

test

$

como é que sabias isto?

hehehe, não sabia isto de cor.

Sabia que era possível, porque já o tinha feito há uns tempos numas experiências.

Fui "só" lembrar-me que tinha de usar o OpenSSL, consultar 1 ou 2 manpages, e testar um bocadito até acertar :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ehehehe... há pouco só tinha inserido caracteres básicos.... agora que inseri uns acentos e tal já percbi que realmente é necessário converter para um formato mais seguro...

olhem só como ficou o meu gnome terminal depois de lhe ter insrido uns acentos e tal... e o engraçado é que até a prompt e o que quer que teclasse ficava tudo marado

fdupfd9.png

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora