also es gibt aktive und passive dongle
hier mal ein bsp für einen passiven:
bei programmstart wird an der entsprechenden schnittstelle gehorcht (z.B. USB / Seriell / Parallel / ...) und wenn dort ein entsprechendes hardwaregegenstück ist, welches auf die software reagiert, wird ein signal zurück an die software gesendet. dieses passiert wärend dem lauf der software kontinuierlich.
sollte der dongle nicht mehr da sein, wird die software beendet
mfg bikky
p.s. ein aktiver enthält selber ein programm welches die software welche gestartet ist freischaltet. zu 99% werden passive dongles verwendet