È abbastanza facile, devi solo eseguire un MD5 o SHA256 sul tuo eseguibile, quindi, quando rilevi che la firma è cambiata da ciò che hai codificato nel binario dopo aver creato la versione finale, allora è chiaro che qualcuno ha hackerato il tuo eseguibile. Quindi la maggior parte delle aziende, non solo mostra più un popup (era il caso prima) che dice "PE rotto" o "virus rilevato" e quindi esce dal gioco, perché questo sarà molto rapidamente contro gli hacker. Perché il gioco è in pausa sul ciclo di messaggi della finestra di dialogo, quindi è immediato vedere a causa di quale ramo è stata visualizzata la finestra di dialogo e basta bypassare il ramo modificando il codice al controllo delle condizioni.
Oggi, le aziende usano cambiamenti molto sottili nel gameplay, come moltiplicare la vita dei mostri per rendere il gioco ingiocabile o incredibilmente integrato in questo gioco di gestione, dove gestisci un'azienda di gioco e alla fine perdi perché troppi giocatori stavano piratando il tuo gioco. Bella mise en abyme in questo caso. A volte ti viene semplicemente caricata una bandiera rossa sui server dell'azienda e quando vuoi chiamarli per ricevere assistenza ricevi un discorso o intrappolato nel rivelare la tua identità.
ma questo è tutto argomento, la tecnica è hash. e questi controlli possono essere eseguiti in molti punti del binario in modo che se gli hacker ne trovano uno e lo cancellano, non è abbastanza.
EDIT: se copi il gioco così com'è, potrebbe funzionare se il gioco non ha alcuna misura antipirateria. Funzionava con giochi molto vecchi, nell'era dei masterizzatori pre-CD. Ecco perché, il più delle volte, il gioco deve essere installato per funzionare, non solo la cartella di installazione copiata. Ciò implica che i file nascosti si trovano un po 'ovunque nel sistema e le chiavi di registro. Il gioco controlla la presenza di queste cose, che possono essere create solo dall'installatore. E il programma di installazione può essere eseguito solo dal CD, che non è copiabile a causa di bit erratici che non rispettano il sistema di codici di correzione degli errori nei primi byte del disco, che uccide la maggior parte dei driver del lettore CD. Alcuni software di copia, come il nero di alcol, ti propongono di ignorare gli errori ma ciò che bruciano è quindi una copia corretta, il programma di installazione lo rileva e il gioco è fatto.
EDIT2:
D: come eseguire l'hash di un file, quindi inserire l'hash nel file che modifica l'hash?
@ Byte56: Accidenti stiamo ricevendo commenti intelligenti qui :) Sì, è un paradosso e non può essere risolto. Quindi l'hash deve essere creato dalla parte del file binario che non contiene l'hash. E il codice di controllo deve saperlo, per escludere quella zona quando si esegue il controllo automatico. Ho visto persone che usano tag, come ~~ #### [metti l'hash qui] #### ~~ per racchiudere il loro hash e fare l'esclusione. Ma ha il difetto di essere facile da individuare per gli hacker, quindi l'hash deve essere confuso e sparso in più posizioni. Anche crittografato perché no, e la stessa operazione di camuffamento va a memorizzare la chiave privata.