Da Du anscheinend schon su - hinbekommst, nimm doch einfach useradd.
Beispiele für den Crypt bietet z.B. htpasswd des Apache oder pg_passwd
von Postgres!
LOL: in perl
crypt( key, salt)
den salt kanst Du Dir aussuchen (also zwei Zufallszeichen)!
Wenn Du ein eingegebenes Passwort mit einem aus der /etc/passwd vergleichen
willst, sind die ersten beiden Zeichen des Passwortes aus der passwd als Salt zu
verwenden.