Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

05.09.2013, 22:25

Einzigartiger Wert

Hallo,
ich bin gerade am experimentieren mit Algorithmen für Serial-Codes und wollte mal fragen, ob es irgendeinen bestimmten Wert gibt, der von Computer zu Computer unterschiedlich und somit Einzigartig ist.

MfG
MazzMan
Hi

2

05.09.2013, 22:35

die MAC-Adresse? (oder ein Hash davon?)

der Windows-Key?

eine zufällige Zahl (falls groß genug ist eine Kollission einigermaßen unwahrscheinlich)

Sacaldur

Community-Fossil

Beiträge: 2 301

Wohnort: Berlin

Beruf: FIAE

  • Private Nachricht senden

3

05.09.2013, 22:44

Wofür brauchst du an dieser Stelle eine je Rechner eindeutige Nummer? Die Generierung der Nummern sollte unabhängig vom Verbraucherrechner sein und letztendlich nicht an einen Rechner, sondern an eine Person bzw. an einen Account gebunden sein.
MAC-Adressen sind zwar eindeutig, aber nur je Netzwerkschnittstelle. Mein Laptop alleine hat davon mehrere und ein Tool müsste sich dann wohl für eine davon entscheiden. Evtl. erwischt man dann auch mal einen Rechner, wo der Onboard-Chip vielleicht mal ausfällt und sich die Person eine Netzwerkkarte zulegt o. ä. Man kann sich also nicht unbedingt darauf verlassen, dass im gleichen Rechner auch immer die gleichen MAC-Adressen sein werden.

Im Zweifelsfall kannst du einfach mal gucken, was Steam an dieser Stelle macht (um einen Rechner eindeutig widerzuerkennen).
Spieleentwickler in Berlin? (Thema in diesem Forum)
---
Es ist ja keine Schande etwas falsch zu machen, als Programmierer tu ich das täglich, [...].

MitgliedXYZ

Alter Hase

Beiträge: 1 369

Wohnort: Bayern

  • Private Nachricht senden

4

06.09.2013, 15:18

die MAC-Adresse? (oder ein Hash davon?)
Einen Hash davon? Dann könnten aber auch bei verschiedenen MAC-Adressen gleiche Werte rauskommen. Unwahrscheinlich, aber wohl deswegen nicht die beste Wahl.

Sacaldur

Community-Fossil

Beiträge: 2 301

Wohnort: Berlin

Beruf: FIAE

  • Private Nachricht senden

5

06.09.2013, 16:35

die MAC-Adresse? (oder ein Hash davon?)
Einen Hash davon?

Das ist unsinnig, da MAC-Adressen eindeutig sind. Das Problem ist nicht die Eindeutigkeit der MAC-Adresse, sondern die Zuweisung zu einem Gerät.
Spieleentwickler in Berlin? (Thema in diesem Forum)
---
Es ist ja keine Schande etwas falsch zu machen, als Programmierer tu ich das täglich, [...].

MitgliedXYZ

Alter Hase

Beiträge: 1 369

Wohnort: Bayern

  • Private Nachricht senden

6

06.09.2013, 17:59

die MAC-Adresse? (oder ein Hash davon?)
Einen Hash davon?

Das ist unsinnig, da MAC-Adressen eindeutig sind. Das Problem ist nicht die Eindeutigkeit der MAC-Adresse, sondern die Zuweisung zu einem Gerät.
Das meinte ich ja, wieso einen Hash von einem bereits kurzem, eindeutigen Wert, würde man dann nur den Hash speichern, hat man ja wieder einen uneindeutigen Wert.

Evrey

Treue Seele

Beiträge: 245

Beruf: Weltherrscher

  • Private Nachricht senden

7

06.09.2013, 18:59

Mir fällt da jetzt spontan UUID zu ein. Müsstest du aber selbst näher recherchieren. Habe mich nie mit befasst. Aber das könnte sein, wonach du suchst.

C-/C++-Quelltext

1
2
3
4
int main(int _argc, char** _argv) noexcept {
  asm volatile("lock cmpxchg8b %eax");
  return 0;
} // ::main
(Dieses kleine Biest vermochte einst x86-Prozessoren lahm zu legen.)

=> Und er blogt unter Hackish.Codes D:

Sacaldur

Community-Fossil

Beiträge: 2 301

Wohnort: Berlin

Beruf: FIAE

  • Private Nachricht senden

8

06.09.2013, 19:43

die MAC-Adresse? (oder ein Hash davon?)
Einen Hash davon?

Das ist unsinnig, da MAC-Adressen eindeutig sind. Das Problem ist nicht die Eindeutigkeit der MAC-Adresse, sondern die Zuweisung zu einem Gerät.
Das meinte ich ja, wieso einen Hash von einem bereits kurzem, eindeutigen Wert, würde man dann nur den Hash speichern, hat man ja wieder einen uneindeutigen Wert.

Mein Fehler, ich sollte besser lesen... v.v
Mir fällt da jetzt spontan UUID zu ein. Müsstest du aber selbst näher recherchieren. Habe mich nie mit befasst. Aber das könnte sein, wonach du suchst.

Sofern diese auf dem jeweiligen System für die Benutzer generiert wird, könnte man damit einen Benutzer auf einem System (theoretischerweise) eindeutig identifizieren. Mir ist allerdings nicht bekannt, dass eine solche bei der Installation des Betriebssystems oder vom BIOS o. ä. generiert wird, also kann man auch damit (streng genommen) nicht einen Rechner eindeutig identifizieren, sondern nur einen Benutzer auf einem Rechner oder eine bestimmte Betriebssysteminstallation (vorausgesetzt, das Betriebssystem wird nicht neu installiert oder der Benutzer neu angelegt).

Im Endeffekt wäre es schon wichtig zu wissen, wofür diese Nummer/ID verwendet werden soll. Ich hatte bereits geschrieben, dass es sehr wahrscheinlich nicht sinnvoll sein wird, einen Computer eindeutig identifizieren zu können.
Spieleentwickler in Berlin? (Thema in diesem Forum)
---
Es ist ja keine Schande etwas falsch zu machen, als Programmierer tu ich das täglich, [...].

9

09.09.2013, 17:16

Intel hatte so eine eindeutige, auslesbare ID mal in den Pentium 3 eingebaut. Für mehr Sicherheit bei E-Commerce usw.
Danach gab es jede Menge Proteste wegen Verletzung der Privatsphäre usw.
Der Nachfolger kam dann wieder ohne eindeutige, auslesbare ID auf den Markt.
Sowas bringt jetzt natürlich keiner mehr, weil dann sofort die Proteste wieder losgehen würden...

Es gibt fertige Bibliotheken für Programmierer, die eine eindeutige ID aus vielen verschiedenen Hardware-Werten erstellen.
Sowas kann man natürlich auch selbst programmieren.
Diese ID ist dann aber so stark zusammengebastelt, dass eine kleine Änderung an der Hardware die ID verändert.
Ich hatte schon Programme die ich deshalb öfters online registrieren musste. Das war eigentlich ok, ging per Mausklick.

Die MAC-Adresse ist relativ leicht änderbar und nur in der Theorie eindeutig. In der Praxis wird bei der Vergabe scheinbar öfters gepfuscht.

Legend

Alter Hase

Beiträge: 731

Beruf: Softwareentwickler

  • Private Nachricht senden

10

09.09.2013, 22:41

Windows hat noch den Security Identifier: http://de.wikipedia.org/wiki/Security_Identifier
Vielleicht kommt man an den ja ran. Das wäre vielleicht eine Möglichkeit eine Windows Installation zu identifizieren.
"Wir müssen uns auf unsere Kernkompetenzen konzentrieren!" - "Juhu, wir machen eine Farm auf!"

Netzwerkbibliothek von mir, C#, LGPL: https://sourceforge.net/projects/statetransmitt/

Werbeanzeige