úÎuøNone&Pure Haskell implementation of SHA512 crypt method.For libc2 versions supporting SHA512 encryption scheme (6):A"$6$" `isPrefixOf` salt ==> crypt key salt = cryptSHA512 key salt"a snippet from glibc documentationglibc implementations of crypt* support additional encryption algorithms.If salt4 is a character string starting with the characters "$id$"$ followed by a string terminated by "$": $id$salt$encrypted Ÿthen instead of using the DES machine, id identifies the encryption method used and this then determines how the rest of the password string is interpreted.The id value 6& corresponds to SHA-512 method (since  glibc-2.17).If the salt string starts with  rounds=<N>$ where N4 is an unsigned decimal number the numeric value of N3 is used to modify the algorithm used. For example: $6$rounds=77777$salt$encrypted See -https://www.akkadia.org/drepper/SHA-crypt.txtSplit salt-input variant of . Salt is encoded.Raw input implementation of .3Custom base64 encoding used by crypt SHA512 scheme.8Custom base64 encoding used by crypt SHA512 scheme. See . keysalt: $6$...roundskeysalt, will be base64 encodedrounds, clamped into [1000, 999999999] rangekeysalt, first 16 characters used.roundskeysalt    %crypt-sha512-0-23dl21UeYmBG5v2Kj8IRJQSystem.POSIX.Crypt.SHA512 cryptSHA512 cryptSHA512'cryptSHA512Rawencode64 encode64List traceBSIdheaderimplementation encode64'