View Full Version : [VB.NET] Proteggere un programma
OrcaAssassina
26-03-2008, 05:09
Dovrei proteggere il mio programma.
Inizialmente avevo creato un file che mi recuperava il seriale di windows + la schede di rete.
Mi faceva un file.
Io con un altro programmino lo codificavo e lo mettono nella root del programma
All'avvio confrontava questi valori e se andava mi si avviava il programma
Poi ho dovuto eliminare la schede di rete perchè lui prende sempre quella attiva, quindi se un momento una il cavo funziona, se usa ad esempio la wireless il mac cambia e il programma non si avvia
Sono passato a windows+seriale HD
Tutto perfetto, poi ho scoperto che i dischi in RAID non restituiscono il seriale
Sono passato a windows+seriale CPU
Tutto perfetto, poi ho notato che alcuni proci tipo AMD AM2 non restituiscono i seriale
Adesso..........non so più che fare
Consigli?????
Continuo con una protezione software o mi consigliate di buttarmi su una protezione hardware tipo chiave usb?????
Nella chiave hardware vorrei scrivere anche un numero da 1 a 3, per individuare quale "pacchetto" deve caricare in base all'acquisto
In pratica ho 3 pacchetto
Base
Intermedio
Avanzato
In base all'acquisto attiverò sulla penna USB il pacchetto desiderato.
E' possibile fare una cosa del genere????
CONSIGLIATEMI: PROTEZIONE SOFTWARE o HARDWARE????
Ciao e grazieeeee
Io ti consiglio protezione software.
Comunque come hai risolto (o risolveresti) il problema che l'utente installi di nuovo il prodotto da zero, su un'altra macchina?
OrcaAssassina
26-03-2008, 08:15
Io ti consiglio protezione software.
Comunque come hai risolto (o risolveresti) il problema che l'utente installi di nuovo il prodotto da zero, su un'altra macchina?
Con la protezione software gli devo ricreare la licenza
Con la protezione hardware è gia apposto
Con la protezione software gli devo ricreare la licenza
Con la protezione hardware è gia apposto
Non mi e' chiaro.
Immagina che tu crei una protezione sotware, che in pratica vada a leggere qualche numero univoco sulla tua macchina e lo usi per creare una licenza privata.
Quando viene fatto? Da chi?
Se e' come tutti gli altri, ovvero che questa chiave viene creata in fase di installazione, questo impedisce all'utente di copiare la cartella installata su un'altra macchina, dove il numero univoco sara' diverso per definizione, e il programma non partira'.
Cosa impedisce pero' all'utente di installare di nuovo il prodotto da zero, sull'altra macchina, facendogli generare quindi una sua nuova licenza privata?
Per la hardware e' chiaro che non potra' girare su entrambe le macchine contemporaneamente, quindi il problema e' gia' a posto. Ma non te la consiglio, non lo fa quasi piu' nessuno.
Pensa se per ogni programma avessimo una chiave...
OrcaAssassina
26-03-2008, 08:33
Non mi e' chiaro.
Immagina che tu crei una protezione sotware, che in pratica vada a leggere qualche numero univoco sulla tua macchina e lo usi per creare una licenza privata.
Quando viene fatto? Da chi?
Se e' come tutti gli altri, ovvero che questa chiave viene creata in fase di installazione, questo impedisce all'utente di copiare la cartella installata su un'altra macchina, dove il numero univoco sara' diverso per definizione, e il programma non partira'.
Cosa impedisce pero' all'utente di installare di nuovo il prodotto da zero, sull'altra macchina, facendogli generare quindi una sua nuova licenza privata?
Per la hardware e' chiaro che non potra' girare su entrambe le macchine contemporaneamente, quindi il problema e' gia' a posto. Ma non te la consiglio, non lo fa quasi piu' nessuno.
Pensa se per ogni programma avessimo una chiave...
ok ti spiego
abbiamo creato una libreria che raccoglie:
-Seriale di win
- Seriale CPU
e crea un file xxxxx.dat
poi lui me lo invia, io con un programmino che ho fatto, decripto il tutto e gli rimando il file
lui lo mette nella root sovrascrive il precedente ed è apposto
quando apre il programma legge i valori nel file xxxxx.dat e li confronta con l'hardware se corrisponde lui è apposto
ok????
fammi sapere se è chiaro
consigliami altri metodi
orda2000
26-03-2008, 08:51
io farei accoppiata seriale win + SystemBiosVersion sempre dal registro di sistema... cosa ne pensi?
E' chiaro.
Secondo me va bene.
Ti stai scontrando contro quello che e' il sistema di identificazione univoco che qualcuno aveva proposto di unificare in un servizio messo all'interno di un chip (Fritz), integrato probabilmente sul chipset oppure messo proprio a parte.
Tra i servizi offerti da tale chip ci sarebbero, e non li conosco proprio tutti:
- Codice seriale univoco.
- Generatore di numeri casuali hardware.
- Generatore hardware di chiavi univoche per la crittografia
- Funzioni di libreria hardware per gestire il PGP, quindi cifratura, decifratura, autenticazione, etc.
In molti ci si sono messi contro, e molti sono anche qui su questo forum.
Prova a chiedere a loro come risovere il tuo problema, in un modo che non sia semplicemente il "Regalare" il tuo software a tutti.
OrcaAssassina
26-03-2008, 09:30
Non male: win + SystemBiosVersion
è visualizzabile sempre il "SystemBiosVersion"???
Ciao e grazieeeeeeeeee
orda2000
26-03-2008, 10:00
dire di sì,
HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System
OrcaAssassina
26-03-2008, 10:38
dire di sì,
HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System
Per SystemBiosVersion si intende la versione o il modello
E' sempre un seriale?????
Ciao e grazieeeeee
orda2000
26-03-2008, 11:13
questo è il mio su questo computer
COMPAL - 6040000
PhoenixBIOS 4.0 Release 6.0
Ver 1.00PARTTBL(
entrambi direi
acquariusoft
26-03-2008, 11:14
Per SystemBiosVersion si intende la versione o il modello
E' sempre un seriale?????
Ciao e grazieeeeee
Ma non è che poi questa voce cambia se si aggiorna il bios?Non potrebbe essere un problema dover riattivare il programma ogni volta che si aggiorna il bios?
Certo non è una cosa che si fà spesso a me romperebbe alquanto :oink:
khelidan1980
26-03-2008, 11:18
compal ecc..... dovrebbe essere il seriale del portatile,e non cambia se aggiorni il bios,il problema è che sui desktop sei punto a capo,ammesso che una scheda madre abbia qualcosa del genere,se la cambi non funziona piu il programma
orda2000
26-03-2008, 11:20
ma se cambi la scheda madre per la microsoft non devi rieffettuare una nuova abilitazione di windows?
OrcaAssassina
26-03-2008, 11:35
ma se cambi la scheda madre per la microsoft non devi rieffettuare una nuova abilitazione di windows?
Approposito di WINDOWS
Sapete come funzionano le loro chiavi con l'attivazione online
Potrei anche fare un cosa del genere.
Sapete il funzionamento??????
wingman87
26-03-2008, 18:27
Perché usi sempre mille punti di domanda? Ne basta uno.
Per windows credo che la chiave sia scritta sul cd di installazione, quindi una chiave diversa per ogni cd (non ne sono sicuro, vado a intuito).
amedeoviscido
27-03-2008, 10:41
Io invece ti faccio notare un'altra cosa. Sai che VB.NET è disassemblabile vero? Potrebbero vedere cosa vai a guardare e fare una crack apposita, ma questo soltato se il tuo programma dev'essere distribuito in massa; non credo che se lo realizzi x qualche cliente si metta ad ingaggiare un cracker apposta :D
OrcaAssassina
27-03-2008, 11:17
Io invece ti faccio notare un'altra cosa. Sai che VB.NET è disassemblabile vero? Potrebbero vedere cosa vai a guardare e fare una crack apposita, ma questo soltato se il tuo programma dev'essere distribuito in massa; non credo che se lo realizzi x qualche cliente si metta ad ingaggiare un cracker apposta :D
Si esatto
Ci piacerebbe puntare anche alla "massa" ma ancora non ne siamo sicuri.
Comunque tutto e' disassemblabile.
Se si pensa al fatto che vengano ingaggiati hacker, allora non c'e' protezione che tenga.
E' chiaro.
Secondo me va bene.
Ti stai scontrando contro quello che e' il sistema di identificazione univoco che qualcuno aveva proposto di unificare in un servizio messo all'interno di un chip (Fritz), integrato probabilmente sul chipset oppure messo proprio a parte.
Tra i servizi offerti da tale chip ci sarebbero, e non li conosco proprio tutti:
- Codice seriale univoco.
- Generatore di numeri casuali hardware.
- Generatore hardware di chiavi univoche per la crittografia
- Funzioni di libreria hardware per gestire il PGP, quindi cifratura, decifratura, autenticazione, etc.
In molti ci si sono messi contro, e molti sono anche qui su questo forum.
Prova a chiedere a loro come risovere il tuo problema, in un modo che non sia semplicemente il "Regalare" il tuo software a tutti.
non è andata proprio così, comunque se c'è qualcosa contro cui mettersi non è il chip fritz, ma piuttosto l'uso che se ne fa (aka NGSCB (aka palladium))
Comunque tutto e' disassemblabile.
Se si pensa al fatto che vengano ingaggiati hacker, allora non c'e' protezione che tenga.
concordo pienamente (a parte l'uso del termine hacker :O )
forse l'interazione con un servizio online può rendere la vita più difficile
Ho pensato a lungo sul come proteggere un mio programma in VB 6, attualmente, visto che non è distribuito in massa ho escogitato un mio sistema che comunque protegge per modo di dire, copiando il programma su un'altro computer funzionerebbe lo stesso quindi....
in sintesi, stavo pensando ad una pagina scritta in formato Txt o Doc oppure una chiave di registro che una volta installato il programma viene eliminata al primo avvio tramite un comando Bat.
che ne dite, può essere un buon metodo ? :confused:
:D
amedeoviscido
28-03-2008, 22:28
Beh e questa chiave chi dovrebbe crearla, se viene eliminata al primo avvio?
Il download del programma è gratuito ma, funziona solo dopo l'attivazione.
Per attivarlo occorre inserire un key Code quando richiesto dal programma.
Quindi, anche copiando il programma, non può essere usato se non si ha il numero, tale numero corrisponde alla durata di funzionamento e va inviato all'utente con una mail.
Al primo avvio, il numero criptato viene scritto da qualche parte nel PC dell'utente.
:D
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.