Domanda

... lavorando su una RSA primitivo (chiave pubblica / privata) meccanismo di protezione dalla copia a base per il nostro software. Non stiamo usando prodotti 3rd party, ma implementando il modello LicenseProvider di Microsoft. Abbiamo modi in atto per identificare il computer specifico, ma non abbiamo capito come controllare la data corrente contro una data di scadenza memorizzata nel file di licenza (.lic).

DateTime.Today ovviamente sta prendendo la data del sistema, ma cosa succede se l'utente continua a reimpostare la data per qualcosa prima della data di scadenza?

Tutte le idee Simpel come questo potrebbe essere più a prova di proiettile, diverso da andare a prendere la data da una fonte online? Anche in questo caso, niente di speciale, ma meglio di DateTime.Today:)

Come al solito, grazie mille!

È stato utile?

Soluzione

È possibile memorizzare la data ultima controllato la licenza crittografata nel Registro di sistema. Questo vi fornirà una data coerente e può anche essere utilizzato per verificare se l'utente ha impostato indietro la data di sistema.

Altri suggerimenti

Si può sempre utilizzare un gestita NTP client a prendere il tempo da un server NTP. (Si noti che un utente intelligente potrebbe utilizzare il proprio file host per reindirizzare le query NTP a un server NTP falso sotto il loro controllo, ma non c'è davvero solo così tanto si può fare su questo.)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top