Frage

Ich bin mit C # und .NET 2.0. Meine App benötigt eine Möglichkeit, die verschiedenen Benutzer zu überprüfen, so dass ich Hardware-ID verwendet werden, aber ich sah, dass ich nur verwenden kann:

  • MAC-Adresse - leicht veränderbar und nicht alle haben es // NO
  • Prozessor-ID - mit WMI es einen Wert für die CPU-Modell gibt, ist es nicht eindeutig // NO
  • Motherboard seriell - nicht jedes Motherboard haben es // NO
  • die Lautstärke Serien Windows - ich bin mir nicht sicher, ob es unter Windows wieder installieren und das Format des Volumens
  • geändert werden

So gibt es etwas, was ich nicht für hwid erwähnt haben? Ich möchte etwas, dass jeder haben und es wird nicht wieder installiert auf Windows gelöscht werden. Else würde ich die Fenster der Datenträger-Seriennummer verwenden.


EDIT: Von den commments Ich denke, es ist am besten HDD-ID zu verwenden. Wie es zu bekommen? EDIT 2: Ich habe gerade gelesen, dass die SCSI-Laufwerke Serien nicht haben. Ist das wahr?

FINAL EDIT: Ich bin bereits das Root-Laufwerk seriell auf meiner App. Es funktioniert ziemlich gut ist. Vielen Dank an Alle.

War es hilfreich?

Lösung

HDD Seriennummer: einzigartig, unveränderlich, und jeder hat es.

nicht eine perfekte Wahl, aber ...

Andere Tipps

Nun würde ich für mehr als eine ID gehen. Wenn Sie genug IDs kombinieren sie genügend Einzigartigkeit erhalten.

EDIT: (. Platter, Zylinder usw.) auch für den Platz auf der Festplatte gehen könnte Ihr Programm wurde auch installiert

Warum wollen Sie Hardware-ID benutzen? Ich würde mit einer Art gehen die formularbasierte (oder AD-basiert) Sicherheit, selbst.

Da jedoch: Die Sache HWID ist, dass es diese bestimmte Computerkonfiguration identifiziert: es Änderung ausgelegt ist, wenn es Änderungen am System ist. Sie erwähnen, dass Windows-Volume Serial auf Neuinstallation und Neuformatierung ändern könnte, aber nicht Ihre Software auch an diesem Punkt neu installiert werden müssen? HDD Serien könnte auch wenn ändern, sagen wir, die User-Swaps HDDs aus irgendeinem Grund.

Wenn Sie HWID verwenden haben, werden Sie wahrscheinlich eine brauchen zu wählen (oder mehrere) der verfügbaren Optionen Einzigartigkeit zu geben und entweder Code um, oder Benutzer darüber zu informieren, ändert Hardware erfordert eine erneute Installation und / oder rekonfigurieren Ihre Software.

Die MAC-Adresse ist nicht sehr zuverlässig. Sie sollten etwas verwenden, die nicht eine solche CPU-ID oder HDD IDE-ID geändert werden kann.

Hier möchte ich meine:
http://www.soft.tahionic.com/download-hdd_id/index.html
http://www.soft.tahionic.com /download-hdd_id/hardware%20ID%20programmer%27s%20DLL.html


Und um Ihre Frage zu beantworten: Ja, SCSI keine Hardware-ID.

Haben Sie über die Sicherheit oder nur die Zuverlässigkeit denken, das heißt muss der Benutzer Ihre ID-Prüfung manipulieren wollen? Wenn Sie (hoch) Sicherheit benötigen, kauft eine der „Softwareschutz“ Produkte, das ist viel billiger als es selbst zu tun.

Keine hohe Sicherheit erforderlich? => Eine weitere Möglichkeit ist es, die Benutzer oder Computer-SID zu verwenden. Sie müssen berücksichtigen, dass Ihre Anwendung elvated ausgeführt wird => Benutzer ist Administrator dann.

Last but not least: Schreiben Sie einen zufälligen Wert von einigen Bytes in die Registry (möglicherweise an verschiedenen Stellen) unter HKEY_CURRENT_USER und verwendet diese als ID.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top