Sì, il 6 indica SHA512. Stai sbagliando qui
Il salt concettualmente è solo una stringa da appendere alla password, ma in pratica la faccenda è un po' più complicata. Ti consiglio di cambiare libreria e di usarne una che prevede l'uso del salt, sempre che non si possa già fare con ciò che stai usando. Se lo vuoi fare in C, gran parte del codice lo trovi qui, ma anche li dovrai modificare un po' di cose per farlo funzionare con il salt. Io ci ho provato usando crypt e sono riuscito facilmente generare l'hash associato alla mia password (e anche la mia distro usa SHA512).hashed = base64.b64encode(hashlib.sha512((salt+ possibile_pwd).encode()).digest())