Delphi-PRAXiS
Seite 4 von 5   « Erste     234 5      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Eindeutige Nr. Weltweit auslesen (https://www.delphipraxis.net/97789-eindeutige-nr-weltweit-auslesen.html)

mkinzler 16. Aug 2007 18:31

Re: Eindeutige Nr. Weltweit auslesen
 
Eine GUID ist ein Wert der im Normalffal nur einmal vergeben wird. Ein Hashwert kann mehrmals vorkommen, da es sich dabei um eine Abbildung von einem in einem anderen wertebereich handelt, wobei der 2. meißt kleiner als der Ausgangswertebereiuch ist.

DGL-luke 16. Aug 2007 18:39

Re: Eindeutige Nr. Weltweit auslesen
 
@MAC-Adresse: Die sind spoofbar. Ich kann jetzt nicht beschwören, dass entsprechende Tools tatsächlich die MAC-Adresse der Netzwerkkarte temporär physisch ändern und nicht nur die IP-Pakete manipulieren, aber ich glaube das geht.

@Hash: Zu einem Hashwert gibt es unendliche viele kollidierende Input-Möglichkeiten! Ist so. Du kriegst heutzutage über Rainbow Tables und andere Dictionary-basierte verfahren zu so gut wie jedem md5-hash innerhalb von Sekunden einen Kollisionsstring.

@GUID: es gibt so viele mögliche GUIDs, dass es extrem unwahrscheinlich ist, zweimal die selbe zu haben. So viel wurde schon gesagt. Trotzdem sollte man immer einberechnen, dass es passieren kann!

Dezipaitor 16. Aug 2007 18:52

Re: Eindeutige Nr. Weltweit auslesen
 
Zitat:

Zitat von mkinzler
Eine GUID ist ein Wert der im Normalffal nur einmal vergeben wird. Ein Hashwert kann mehrmals vorkommen, da es sich dabei um eine Abbildung von einem in einem anderen wertebereich handelt, wobei der 2. meißt kleiner als der Ausgangswertebereiuch ist.

Zitat:

Zitat von DGL-luke
@Hash: Zu einem Hashwert gibt es unendliche viele kollidierende Input-Möglichkeiten! Ist so. Du kriegst heutzutage über Rainbow Tables und andere Dictionary-basierte verfahren zu so gut wie jedem md5-hash innerhalb von Sekunden einen Kollisionsstring.

Aber nur weil die Funktionen nicht perfekt abbilden. Perfekte Abbildung kann man für das Thema vielleicht schwer erreichen, wenn es aber immer möglich wäre das Hashing perfekt hinzubekommen, dann würde man es nur noch verwenden.

Olli 16. Aug 2007 18:54

Re: Eindeutige Nr. Weltweit auslesen
 
Zitat:

Zitat von DeddyH
@s-off: Du musst nicht gleich sauer reagieren, ich wollte ja nur darauf aufmerksam machen, dass die MAC-Adresse, die ja per Spezifikation weltweit eindeutig sein soll, dies in der Praxis nicht unbedingt auch ist. Natürlich geht die Wahrscheinlichkeit, jemals 2 Rechner mit derselben MAC-Adresse zu Gesicht zu bekommen, statistisch gesehen gegen 0.

Abgesehen davon erlauben die meisten NIC-Treiber die MAC-Adresse zu wählen (alternativ kann man auch "fälschen" oder "ändern") sagen.

Das kann sogar treiberunabhängig sein, müßte ich aber nachschauen.

Khabarakh 16. Aug 2007 19:45

Re: Eindeutige Nr. Weltweit auslesen
 
Zitat:

Zitat von Dezipaitor
Aber nur weil die Funktionen nicht perfekt abbilden. Perfekte Abbildung kann man für das Thema vielleicht schwer erreichen, wenn es aber immer möglich wäre das Hashing perfekt hinzubekommen, dann würde man es nur noch verwenden.

Und jetzt erklär uns noch einmal ganz langsam, wie du eine unendlich große Menge von Ausgangswerten bijektiv auf eine endliche Menge von Hashwerten abbilden willst :gruebel: .

Dezipaitor 16. Aug 2007 19:51

Re: Eindeutige Nr. Weltweit auslesen
 
Zitat:

Zitat von Khabarakh
Zitat:

Zitat von Dezipaitor
Aber nur weil die Funktionen nicht perfekt abbilden. Perfekte Abbildung kann man für das Thema vielleicht schwer erreichen, wenn es aber immer möglich wäre das Hashing perfekt hinzubekommen, dann würde man es nur noch verwenden.

Und jetzt erklär uns noch einmal ganz langsam, wie du eine unendlich große Menge von Ausgangswerten bijektiv auf eine endliche Menge von Hashwerten abbilden willst :gruebel: .

Die Menge von HW und SW (Potenzmenge) ist sicher sehr groß, aber auch sicher nicht unendlich. Würden wir mit unendlichen Mengen rechnen müssen, hätten wir echt ein Problem, denn dann müsste zumindest eine Art von HW oder SW Komponente unendlich in der Zahl sein.

Md5 wird doch auch oft für Passwörter eingesetzt und alle vertrauen darauf, dass keine zwei Passwörter denselben Wert ergeben.

DGL-luke 16. Aug 2007 19:54

Re: Eindeutige Nr. Weltweit auslesen
 
Zitat:

Zitat von Olli
Abgesehen davon erlauben die meisten NIC-Treiber die MAC-Adresse zu wählen (alternativ kann man auch "fälschen" oder "ändern") sagen.

Das kann sogar treiberunabhängig sein, müßte ich aber nachschauen.

Sag ich doch... :mrgreen:

mkinzler 16. Aug 2007 20:07

Re: Eindeutige Nr. Weltweit auslesen
 
Zitat:

Md5 wird doch auch oft für Passwörter eingesetzt und alle vertrauen darauf, dass keine zwei Passwörter denselben Wert ergeben.
Es wird aber keine Einzigartigkeit der Wertes orausgesetzt. Außerdem ist in diesem Fall der Hash meistens länger als das Passwort.

Khabarakh 16. Aug 2007 20:34

Re: Eindeutige Nr. Weltweit auslesen
 
Zitat:

Zitat von Dezipaitor
Die Menge von HW und SW (Potenzmenge) ist sicher sehr groß, aber auch sicher nicht unendlich.

Tja, nur ging es darum überhaupt nicht. In beiden von dir zitierten Postings ging es um schnöde Theorie. Rede nächstes Mal einfach vom praxisquasiperfekten HW-SW-Hash und jeder versteht dich ;) . Achja: Sobald die Anzahl der HW-SW-Kombinationen 1,2 * 2^64 =~ 10^19 (128Bit-Hash) übersteigt, hast du selbst mit einer theoretischen perfekten Hashfunktion mit gleichen Ausganswahrscheinlichkeiten zu einer Wahrscheinlichkeit größer 50% eine Kollision. Birthday Attack
Fazit, um mal auf die von dir genannte Potenzmenge zurückzugreifen: Bei einer Anzahl von 65 voll mischbaren HWs/SWs hätten wir in einem perfekt gleichverteilten 128-Bit-Hash zu 50% eine Kollision. Und den absolut perfekten Hash könnten wir mit 129 verschiedenen Geräten/Anwendungen zur Kollision zwingen. Na dann viel Spaß.
Zitat:

Md5 wird doch auch oft für Passwörter eingesetzt und alle vertrauen darauf, dass keine zwei Passwörter denselben Wert ergeben.
Wer heute noch auf MD5 vertraut, muss seine Forensoftware seit 2004 hinter dem Mond entwickelt haben :stupid: .

Dezipaitor 16. Aug 2007 20:53

Re: Eindeutige Nr. Weltweit auslesen
 
Zitat:

Zitat von mkinzler
Zitat:

Md5 wird doch auch oft für Passwörter eingesetzt und alle vertrauen darauf, dass keine zwei Passwörter denselben Wert ergeben.
Es wird aber keine Einzigartigkeit der Wertes vorausgesetzt. Außerdem ist in diesem Fall der Hash meistens länger als das Passwort.

Wenn der errechnete Hashwert nicht eindeutig wäre, dann würde es bedeuten, dass zwei Passwörter denselben Hashwert bekommen. Somit kann man mit einem anderen Passwort ins System. Mit Bruteforce kann man das knacken, es dauert aber eine längere Zeit. Aber das hat nichts mit dem Thema zu tun. Es würde bedeuten, dass man, um einen gleichen Hashwert, eine Menge von Kombinationen von HW und SW ausprobieren müsste. Also viele HW und SW Kombinationen zusammenbauen, den Hashwert davon berechnen und vergleichen.

Eine perfekte Hashfunktion erzeugt keine Kollisionen. Damit sind alle Abbildungen injektiv. Und damit ist jede Eingabemenge eindeutig auf eine Bildmenge abbildbar. Was zum Thema bedeutet, dass man einen Computer eindeutig identifizierbar machen kann, wenn er keinen Zwilling besitzt (in diesem Fall könnte man noch die Zeit, eine Zufallszahl, Elektronenspin oder eine Quantenmessung einbringen).


Machs doch so:
Sammle alle Daten des PCs (oder soviel du willst) und speichere die Informationen in einem String.
Dazu steckst du noch den Benutzername, installierte Programmnamen und was weiß ich.

Den String verschlüsselst du durch die Hashfunktion "Secure Hash Algorithm" (gibts im Inet). Dadurch kriegst du einen Wert,
der den Computer + Benutzer repräsentiert (solange sich dort nichts ändert).

Fertig. Aus. Punkt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:15 Uhr.
Seite 4 von 5   « Erste     234 5      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz