Dies stimmt so nicht. Es ist entscheidend das die Addresse der Speicherung der Variable unabhänig von deren Aktualisierung erfolgt. D.h. man aktualisiert und schreibt diese Variablen zeitgesteuert, zufällig über längere Zeiträume. Somit wird der tatsächliche Aufwand für den Cracker zeitlich enorm erhöht. Angenommen 10 solcher Variablen wobei pro Tag ab nur 3 dieser Variablen tatsächlich benutzt werden. Somit müsste der Cracker schon 3 Tage lang cracken und immer die korrekten zweitlichen Abläufe finden. Bei der Aktualisierung der Schattenvariablen ist es wichtig das diese Aktualisierung durch schwer debugbare Ereignisse gesteuert wird. Das wären zB. separate Theads, geschummelte Exceptionsbehandlungen oder eben per PostMessage() gesendete Nachrichten. Vorstellbar wäre auch ein
DDE Nachtichtendienst innerhalb der gleichen Anwendung. Dadurch wird ein enorm großer Teil des Betriebssystemes in die Ereigniskontrolle durch den Cracker einbezogen. Am Ende wird der Cracker aus lauter Frust aufgeben. Dies IST das einzigst praktikable ZIEL des Programmieres. D.h. das Program erzeugt in seinem Programfluß eine enorme Menge an sinnlosen Stör-Code der immer nur in sehr kleinen Teile wirklich relevante Aktionen ausführt. Für uns Programmier ist sowas mit ziemlich wenig Aufwand zu erledigen, der Cracker hingegen sieht Millionen von Assemblerzeilen die er alle debuggen muß. Er wartet also ein enorm lange Zeit auf das entscheidende Ereigniss das ihm weiterhilft. Nur dies ist unser Vorteil, denn der Cracker ist ein ungeduldiger, schlampiger und unexakter Mensch !
Gruß Hagen