SYNOPSIS
        string md5_crypt(string str, int seed)
        string md5_crypt(string str, string seed)
        string md5_crypt(bytes  str, int seed)
        string md5_crypt(bytes  str, string seed)

BESCHREIBUNG
        Verschluesselt den String <str> mit dem Schluessel <seed>.
        <seed> kann entweder ein Integer sein oder zwei Zeichen aus
        dem String <seed>.  Wenn <seed> 0 ist, wird ein zufaelliger
        Schluessel erzeugt.

        Das Resultat enthaelt den Schluessel als die ersten beiden Zeichen.

        Die Efun verwendet den MD5-Algorithmus, und das Resultat ist
        kompatible mit der Passwordverschluesselung des Apache Webservers.

        Fuer Passwortabfragen, die ohne Echo eingegeben werden koennen sollen,
        bietet input_to() ein spezielles Flag.

SIEHE AUCH
        crypt(E), md5(E), sha1(E), input_to(E)
