Estou tentando fazer criptografia no Expect conforme descrito neste wiki no Ubuntu 16.04. instalei o tcllib
root@alarmux:/home/abdmin# apt-get install tcllib
Reading package lists... Done
Building dependency tree
Reading state information... Done
tcllib is already the newest version (1.17-dfsg-1).
0 upgraded, 0 newly installed, 0 to remove and 77 not upgraded.
No entanto, quando executo meu script, recebo:
couldn't execute "des": no such file or directory
while executing
"exec echo "$pd" | des -e -k $key -b > /home/abdmin/$filename"
(procedure "utility_encrypt" line 3)
invoked from within
"utility_encrypt pswd encrypted_Pass"
(file "./tclTest" line 22)
Por que o des
comando não pode ser executado?
Essa página lista várias soluções, portanto, você precisará usar apenas uma delas ou outra coisa, dependendo exatamente do que estiver tentando fazer.
des
código de comando depende de algum binário externo chamadodes
. Este comando não é fornecido pelo TCL, nem pelotcllib
. Pode ser algo antigo usado para criptografia DES ou 3DES (antiga, ruim, insegura). Você precisará encontrar odes
comando ou usar algo compatível.tcllib
fornece umades(n)
interface, mas isso não parece estar documentado na página que você vinculou. O DES é, novamente, muito fraco e muito antigo.tcllib
fornece umamd5crypt(n)
interface que é mencionada na página que você vinculou.Algo como PGP ou
bcrypt
ouscrypt
podem ser melhores opções sobre os algoritmos de criptografia DES ou MD5, embora não esteja claro qual problema você está tentando resolver... você precisa de DES para compatibilidade com algo antigo? Como exatamente esses segredos estão sendo usados?Você pode obter a lista de arquivos do
tcllib
pacote para o Ubuntu 16.04 aqui em packages.ubuntu.com , ele não contém um arquivo como/usr/bin/des
o que você está tentando executar - e nenhum outro pacote dos repositórios oficiais. A única alternativa que vejo é baixar o software e (depois de limpar otcllib
pacote) compilá-lo você mesmo conforme explicado aqui: Como instalo um arquivo .tar.gz (ou .tar.bz2)?Como mencionado em um comentário , se tudo o que você quer fazer é evitar a navegação no ombro para senhas de texto simples, você pode usar uma codificação trivial. Por exemplo, aqui está um em Perl
Aqui a senha codificada para
secret123
é)<V5C<F5T,3(S
.