Kleine Berechnung mit C# - und ich stehe im Wald

19/10/2007 - 02:11 von Jürgen Kliezz | Report spam
Hallo zusammen,

ich stehe gerade etwas auf dem Schlauch - und hoffe hier
richtig zu sein. Ich muß es mit C# lösen, daher poste ich
es einfach mal hier.

Es geht darum, daß ich, sagen wir mal 8 verschiedene Lampen
habe. Ich weiß daß Lampe Nummer 5 an ist, alle anderen können
an oder aus sein.

Das Ganze ist in einem String abgebildet, im einfachsten Fall,
wenn alle anderen aus sind, also:

"00001000"

Nun bekomme ich so einen String und muß überprüfen, ob Nr.
5 an ist. Das Problem: der String kommt nicht im Klartext,
sondern als Hash.

Ich muß also alle Kombinationen die Möglich sind durchprobieren,
jeweils hashen und mit dem anderen vergleichen.

Leider raffe ich gerade nicht, wie ich jetzt wohin mit welcher
Schleife laufen muss ... Help :-)

Danke, Jürgen
 

Lesen sie die antworten

#1 Frank Dzaebel
19/10/2007 - 07:10 | Warnen spam
Hallo Jürgen,

Es geht darum, daß ich, sagen wir mal 8 verschiedene Lampen
habe. Ich weiß daß Lampe Nummer 5 an ist, alle anderen können
an oder aus sein.
Das Ganze ist in einem String abgebildet, im einfachsten Fall,
wenn alle anderen aus sind, also: "00001000"
Nun bekomme ich so einen String und muß überprüfen, ob Nr.
5 an ist. Das Problem: der String kommt nicht im Klartext,
sondern als Hash.
Ich muß also alle Kombinationen die Möglich sind durchprobieren,
jeweils hashen und mit dem anderen vergleichen.



Zunàchst welche Hash-Funktion wird benutzt?
Normalerweise sind Hash-Funktionen so aufgebaut,
dass sie nicht 100% eineindeutig in die Original-Zahl
zurückführbar sind. Da müsstest Du schon eine
kollisionsfreie Funktion (für den genutzten Wertebereich)
benutzen.

Also normal vergleicht man einen Hash jeweils mit
z.B. gespeicherten Hash-Werten (hier wàren es 255).
Oder in Deinem Szenario eine Encryption nehmen,
die auch ein Decrypt hat.


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen