Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » double hashing, string

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
12.04.2006, 15:11 Uhr
~sara_500
Gast


Hallo Leute, ich habe ein kleines Problem. Ich habe im internet ueberall gesucht, fand es aber nicht.

Ich weiss nicht welche zwei hash-funktionen ich benutzen soll wenn mein key string ist, d.h. welche funktionen werden ueblich benutzt wenn key string ist???

Kann mir jemand weiterhelfen? Es ist dringend!!!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
12.04.2006, 17:49 Uhr
~sara_500
Gast


Kann mir denn keiner weiterhelfen mit meinem problem???
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
12.04.2006, 20:12 Uhr
Reyx
IT-fetischistischer Wurstsalat mit rostigem Berghorn
(Operator)


Gute Frage ... Was sollst du tun, wenn dein Key String ist ...
Bessere Frage: was heißt es denn bitte schön, wenn "dein Key String ist"?

Ich gehe mal davon aus, dass du aus einem String einen Hashwert berechnen lassen willst (wahrscheinlich für ein Passwort). Dazu sei erst einmal gesagt, dass das per Ansi Standard weder in C noch in C++ möglich ist. Sag also, unter welchem OS du programmierst, und du wirst in's entsprechende Forum verschoben!

Abhängig davon, was du erreichen willst, bieten sich da verschiedene Algorithmen an. Häufig vertreten ist MD5, welcher aber geknackt ist; es können die erzeugten Werte mit manipulierten Ausgangsstrings nachgebildet werden.
Auch weit verbreitet ist SHA(1 ... 512). Auch der ist nicht mehr das Nonplusultra schlechthin, da er ebenfalls als "geknackt" gilt. Das heißt, er ist nicht "sicher" (kein Algorithmis dieser Welt ist das), aber er ist für normale bis professionelle Anforderungen auf jeden Fall sicher genug.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
12.04.2006, 21:45 Uhr
~sara_500
Gast


Also, ertmal vielen Dank!
Ich wollte eigentlcih nur wissen welche die ueblichen funtionen fuer strings man benutzt bei double hashing. Also, gibt es denn nicht etwas einfaches wie h(x)=x mod n und h2(x)=8-xmod8???
Der Professor stellte uns naemlich diese Frage, welche die ueblichen Funtionen man fuer string benutzt?

P.S.:ich programmiere in C++
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
12.04.2006, 22:42 Uhr
Reyx
IT-fetischistischer Wurstsalat mit rostigem Berghorn
(Operator)


OS = Operating System, es war eigentlich nach dem Betriebssystem gefragt. Bei Schulen würde ich auf Windoof tippen, aber aus Erfahrung weiß ich, dass die jetzt auch vermehrt auf Linux setzen (und wenn sie dann auch noch nach 3 Monaten, so wie bei mir an der Schule, auf die geniale Idee kommt, sämtliche ~30 Computer von Debian Sid auf KUbuntu umzusteigen ... tja, dann war's das erstmal für ein paar Wochen mit dem Netzwerk ).

Was mich verwirrt ist dein "Hash"-Ausdruck. Eine Hash-Funktion ist eine, die einen String irreversibel encodiert. Meinst du das?

Da gibt es keine mir bekannte Implementierung, die dir leicht erklärt werden kann.
Eine übliche "Funktion" gibt es für solch ein Verfahren nicht. Es kommt 1. auf den Anwendungszweck an und 2. auf die persönlichen Hähigkeiten/Vorlieben.

Des weiteren hat die Vergangenheit gezeigt, dass selfmade-Hash-Algorithmen i.d.R. nur eins sind: großer Mist! Deshalb greift man, auch große Firmen, fast immer auf offene, gut erprobte und bekanntlich verlässliche Algorithmen zurück, dann in der Form von Bibliotheken. Und dann sind wir vom ANSI-Standard auch schon wieder weg.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
12.04.2006, 23:03 Uhr
~sara_500
Gast


Also,
wir programmierten paar HashTabellen mit linear probing, double hashing und multiply chaning. Mit double hashing hatten wir die funtionen h(x)=xmodn und h2(x)=8-xmod8, wo x key ist und n die groesse der Tabelle. Unser key war bis jetzt immer typ int oder double. Nun aber wurde die Frage gestellt welche man Funktionen ueblich benutzt wenn key string ist. Ich habe irgendwo gelesen dass man dann einfach jeden Buchstaben des string in Zahl umwandelt bei ACII Standard und dann einfach die Zahlen summiert und dann die h(x)=xmodn benutzt. Aber als was soll ich dann h2(x) nehmen?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
13.04.2006, 00:44 Uhr
Hans
Library Walker
(Operator)


Hi,

versuch es doch einfach mal mit der beschriebenen Methode. D.h. Du nimmst den String, summierst die ASCII-Codes der einzelnen Zeichen und schickst die durch Eure Hash-Funktionen. Dann vergleichst Du die Ergebnisse miteinander. Evtl. findest Du so die Antwort auf die Frage selber.

Hans
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
13.04.2006, 07:36 Uhr
Spacelord
Hoffnungsloser Fall


double hashing --->

*scnr*

MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: