Dlatego przekazywanie hasła za pomocą argumentu wiersza poleceń nie jest najbezpieczniejszą praktyką. To powiedziawszy, dokumentacja dla openssl pomyliła mnie, jak przekazać argument hasła do komendy openssl.
Oto, co próbuję zrobić
openssl aes-256-cbc -in some_file.enc -out some_file.unenc -d
Następnie pojawia się monit o podanie klucza dostępu do odszyfrowania. Przeszukałem dokumenty openssl i strony internetowe, aby znaleźć odpowiedź, jeśli po prostu chcę podać hasło do polecenia bez próby powtórzenia hasła do pliku. Próbowałem dodawać -pass:somepassword
i -pass somepassword
zarówno z cytatami, jak i bez nich, bezskutecznie.
W końcu wymyśliłem odpowiedź i zobaczyłem na innych forach, że ludzie mają podobne pytania, więc pomyślałem, że opublikuję tutaj moje pytanie i odpowiedź dla społeczności.
Uwaga: Używam openssl w wersji 0.9.8y
źródło
openssl
poleceń (nie tylkoenc
) znajduje się na stronie podręcznika dla openssl (1) również w Internecie pod „OPCJAMI”. Ale nie wierzę w twoje ostatnie zdanie na temat -passin / out; inneopenssl
polecenia jakrsa dsa ec pkey pkcs8 pkcs12 req ca
należy używać tych, ale w każdej wersji Widziałem tym 1.0.1e zbudowany bezpośrednio od źródła upstreamenc
zastosowań-pass
lub-k -kfile
udokumentowane (zenc
podręcznika).openssl dgst
polecenie? Jak wpisać hasło w wierszu poleceń?-passin
służy do podania hasła do certyfikatu wejściowego, i-passout
do nowo wygenerowanego certyfikatuUżyłem
-passin
i-passout
ustawiłem hasła do obu plików na przykład:gdzie
123
i321
są hasłemźródło
W tej chwili Ubuntu 14.04 LTS jest wyposażony w openssl 1.0.1f-1ubuntu2.16
W tej wersji parametrem, którego należy użyć, jest
-k
Przykład:
źródło
man enc
), nie jest opcją ogólną. Jeśli spojrzysz naman openssl
to, zobaczysz pod nagłówkiem „Opcje frazy wyrażenia”, jakie są ogólne opcje;pass:password
,env:var
,file:pathname
,fd:number
Istdin
, jak wspomniano w poprzedniej reakcji.