Shell SHA1 ($ sal. $ $ Contraseña) error
-
13-12-2019 - |
Pregunta
Intento hacer algo así directamente en mi consola como algunos testruns:
no parece funcionar ... cualquier idea cuál es el error que estoy haciendo
salt="3245678906789045689"
password="12321312231"
blub=`sha1($salt.$password)`
-bash: command substitution: line 1: syntax error near unexpected token `$salt.$password'
-bash: command substitution: line 1: `sha1($salt.$password)'
arroja un error Esto es lo que tengo la intención de hacer al final:
echo $blub
¿Puede alguien que le ayude en cuál es el error que estoy haciendo?
Solución
Probablemente desea usar SHA1 desde el paquete openssl . Esto debe estar instalado en su sistema.
echo -n "$salt$password" | openssl dgst -sha1
(stdin)= a1b2ce5a82e18f454db6b2d6ee82533914f90337
para capturar solo el SHA1-DIGEST:
blub=`echo -n "$salt$password" | openssl dgst -sha1 |awk '{print $NF}'`
echo $blub
a1b2ce5a82e18f454db6b2d6ee82533914f90337
Supongo que copió su código de php .Se llama a las funciones con soportes y el operador de .
concatena las cuerdas.En esa interpretación, mi código es el equivalente exacto de su código en bash .
Otros consejos
No se encontré con muchas explicaciones sobre cómo hacer fácilmente una checksum SHA en Bash y ponerla en una variable de la manera correcta, al mismo tiempo que ya no debemos usar SHA1, pero algo más difícil deBruteforce, como SHA512:
dash=`echo -n $password$salt|sha512sum` ##gives hash with trailing dash
read hash rest <<< "$dash" ##removes trailing dash and gives $hash
echo $hash
6555b9d2331203634664f48f604b59372b32badbc115ec6b2586890ef4d3a6b6816d84cc424cdfc538f6a7ccf664c90caeeb942dbf7953051bb1d7414a191c51