Home > Net >  How to get key only with openssl command?
How to get key only with openssl command?

Time:05-03

How can I just retrieve the key value only with openssl command below?

$ openssl enc -aes-128-cbc -k secret -P -md sha1

Output:

salt=9EFF5E41E21EA17F
key=D0F15A0E51C29FA9E7AC1B63DC4585D3
iv =F0090A64ADB51DE25A28151B0C55DAEA

Thanks!

CodePudding user response:

Use grep and sed in pipes:

$ openssl enc -aes-128-cbc -k secret -P -md sha1 | grep key | sed 's/.*=//'

The grep command filters out lines without "key". The sed command replaces all characters from the start up to and including the = with nothing (deleting them).

CodePudding user response:

Use the -nosalt option to suppress the use of a salt in the key derivation. But consider that this is not recommended. Note that this key derivation method is also not recommended, especially with sha1.

Anyway, with awk:

$ openssl enc -aes-128-cbc -nosalt -k secret -P -md sha1 |
  awk -F= '$1 == "key" {print $2}'
2BB80D537B1DA3E38BD30361AA855686
  • Related