Paradigma: bringe die grösst mögliche Informationsdichte in 6 zeichen.
Tue dies auf eine websichere Weise.
use Time::HighRes qw(time);
use Digest::SHA1 qw(sha1_base64);
nimm noch ein sprintf()
Und ich denke der Mix sollte klar sein.Klingt toll ;) Aber ich verstehe es noch nicht. (In Perl bin ich nicht zu Hause, aber ich denke, dass tut auch nichts zur Sache)
Ich verstehe Folgendes:
- nimm die Zeit (6 Zeichen)
Time::HiRes gibt über time() eine Fliesskomma Zahl in Sekunden aus, deren Genauigkeit dem OS unterliegt, aber in aller Regel Genauigkeit bin in 100stel Sekunden ergibt.
- nimm eine Zeichenkette oder Hashwert (64/32 Zeichen)
Nimm die Fliesskommazahl und bilde einen base_64 kodierten Hash
- mache irgendwas mit einer formatierten Ausgabe (so interpretiere ich sprintf)
Kürze den Hash auf 6 Stellen
Wie muss ich die 2 Werte vermixen, damit es eindetig wird?
my $id = sprintf("%6s", sha1_base64( time() ) );
mfg Beat
><o(((°> ><o(((°>
<°)))o>< ><o(((°>o
Der Valigator leibt diese Fische