filename via has generieren
filename via has generieren
ich bastel im moment an einer software die grosse mengen an files mit einem unique identifier versehen soll (d.h. tausende von files die in einen ordner geladen werden solen einzigartige dateinamen bekommen)
hashes wie md5 sind mir aber als dateinamen eigentlich zu lang ( z.b. e910996ce14a3216c1d951e0a79ae874.mpg ). youtube schein auf case sensitive dateinamen zu setzen, was ja wesentlich kuerzere namen ermoeglicht.
( z.b. 2CRrbK8c8HA )
weiss jemand wie diese dateinamen erzeugt werden? ein hash der case sensitive strings erzeugt ist mir grad nicht bekannt.
hashes wie md5 sind mir aber als dateinamen eigentlich zu lang ( z.b. e910996ce14a3216c1d951e0a79ae874.mpg ). youtube schein auf case sensitive dateinamen zu setzen, was ja wesentlich kuerzere namen ermoeglicht.
( z.b. 2CRrbK8c8HA )
weiss jemand wie diese dateinamen erzeugt werden? ein hash der case sensitive strings erzeugt ist mir grad nicht bekannt.
- habakug
- Moderator
- Beiträge: 4314
- Registriert: 23.10.2004 13:08:41
- Lizenz eigener Beiträge: MIT Lizenz
Re: filename via has generieren
Hallo!
Oder "man pwgen":
Gruß, habakug
Oder "man pwgen":
Code: Alles auswählen
[w00t@eaglehost pwfiles]# for i in `pwgen -s 16 10`; do echo $i.file; done
eUgDlvtIgJteWK0k.file
90ZZQhlScX8ae6Gm.file
BwwydJAAcbdTY1KZ.file
z5jPHH2cpgYhhTBL.file
e042wmQsMKZpwtMt.file
6FqNvE2tkjRDf7PW.file
bmItUUb9Xb0tQDib.file
fxSXQLMTgz9y8nkX.file
JY8hr52QDiPCXhiC.file
tYimWwhm7ZhfV6xT.file
Re: filename via has generieren
kann mir jemand der besser in mathematik ist mal eben sagen wieviele moeglichkeiten es fuer eine form
a la "JY8hr52QDiPCXhiC" gibt?
edit: 56800235584 (62 ** 6) possible file names.
a la "JY8hr52QDiPCXhiC" gibt?
edit: 56800235584 (62 ** 6) possible file names.
-
- Beiträge: 3472
- Registriert: 30.11.2005 10:32:22
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Wald
Re: filename via has generieren
Du meinst wohl 62^16 = 47672401706823533450263330816.
Re: filename via has generieren
ja sorry war ein copy and paste fehler, die angabe oben bezog sich auf mktmp, nicht pwgen.
47672401706823533450263330816 sollte so grad ausreichen
47672401706823533450263330816 sollte so grad ausreichen
Re: filename via has generieren
Wieviele Inodes hat das FS denn frei, auf das Du diesen Dateizoo werfen willst?startx hat geschrieben:47672401706823533450263330816 sollte so grad ausreichen
Das dürfte als Obergrenze doch wesentlich schneller zuschlagen...
Re: filename via has generieren
die files sind auf verschiedene filesysteme/computer verteilt. die dateinamen sollen aber im netzwerk eindeutig sein und nicht kollidieren.
-
- Beiträge: 3472
- Registriert: 30.11.2005 10:32:22
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Wald
Re: filename via has generieren
Benutz doch einen Hexstring als Dateinamen, dann muss du nur noch zentral Speichern bis zu welcher Zahl die Namen vergeben sind.
Code: Alles auswählen
ls
00000000
00000001
...
FFFFFFFF
Re: filename via has generieren
genau dieses zentralen ansatz will ich ja vermeidenBenutz doch einen Hexstring als Dateinamen, dann muss du nur noch zentral Speichern bis zu welcher Zahl die Namen vergeben sind.
Re: filename via has generieren
mit Base64-Kodierung hättest du "nur" noch 22 Zeichen:startx hat geschrieben: hashes wie md5 sind mir aber als dateinamen eigentlich zu lang ( z.b. e910996ce14a3216c1d951e0a79ae874.mpg ). youtube schein auf case sensitive dateinamen zu setzen, was ja wesentlich kuerzere namen ermoeglicht.
( z.b. 2CRrbK8c8HA )
Code: Alles auswählen
gms@gms1 ~ $ perl -MDigest::MD5 -e'print Digest::MD5::md5_base64("gms"),"\n"'
wau1Rp49qcTJDmKzlslOKA
http://tools.ietf.org/html/rfc3548#section-4
Youtube scheint einen Algorithmus mit kürzerer Schlüssellänge ( 64bit statt 128bit) zu verwenden
Gruß
gms
Gruß
gms
Re: filename via has generieren
danke fuer den link, schau ich mal rein.