Take a look at the man page for crypt (3) and I think that you will find that the crypt tool has been updated to use glibc and sha256 ($5) and sha512 ($6) , multiple rounds, much larger salt, and so on.
Clearly SHA512 is relevant to how /etc/shadow works.
That said, this web page was very helpful - in particular the MKPASSWD , as this solved MY problem.
Given a potentially "lost" password, I can use MKPASSWD and the salt, to generate the SHA512 hash, and confirm/deny a list of candidate passwords.
I would use John the ripper - but at least on my hardware (Raspberry Pi) and my budget (nothing) - John can't do it (it does not seem to support the advanced crypt/glibc stuff in the raspbian free version.
Mind you, since I have enough permission to read/write /etc/shadow, I COULD just overwrite the hash, and get on with life... this is an academic exercise.
The glibc2 version of this function supports additional encryp‐
If salt is a character string starting with the characters
"$id$" followed by a string terminated by "$":
then instead of using the DES machine, id identifies the encryp‐
tion method used and this then determines how the rest of the
password string is interpreted. The following values of id are
ID | Method
1 | MD5
2a | Blowfish (not in mainline glibc; added in some
| Linux distributions)
5 | SHA-256 (since glibc 2.7)
6 | SHA-512 (since glibc 2.7)
So $5$salt$encrypted is an SHA-256 encoded password and
$6$salt$encrypted is an SHA-512 encoded one.