Zum Thema
Dongle gibt es hier schon einige nette Threads zu finden.
Dort sind auch einige Erfahrungsberichte und viele Infos zu finden.
Der Vorteil an einem Dongle ist, daß man ihn nicht einfach kopieren kann.
Wenn jemand (s)eine einfache Lizenzdatei kopiert und weitergibt, dann ist dein Schutz quasi Wirkungslos.
Alternativ kannst du auch schauen, ob dein/der USB-Stick z.B. eine "feste" Seriennummer (haben leider nicht alle Sticks) oder andere spezifische Merkmale besitzt.
Achtung: Seriennummer des Sticks und nicht der Partition, denn diese kann man kopieren/ändern.
Wenn sowas Spezifisches oder ein Dongle (darauf die Seriennummer abgelegt oder dieser als Identifikator genutzt) vorhanden ist, dann kann man diese Daten z.B. für die Verschlüsselung der Lizenzdatei nutzen,
so daß die Lizenzdatei nur zusammen mit diesem Stick/Dongle gültig ist.
PS: Vergiß nicht, daß man auch dein Programm manipulieren könnte, darin ganz einfach die Lizenzabfrage umgeht und die Funktionen direkt freischaltet.
Bei sowas wie
if istLizenzGültig(Dateiname) then
kann durch die Änderung eines einzigen Bytes umgekehrt werden, so daß es dann
if not istLizenzGültig(Dateiname) then
heißt.
Hierzu gab es schon einige Themen, wo es um den Schutz von z.B. Shareware-Programmen und Dergleichen ging.